【SwiftUI】条件付きView修飾子

特定の条件によってViewの見た目を変える方法を紹介します。

スポンサーリンク

環境

この記事の情報は次のバージョンで動作確認しています。

【Xcode】11.1
【Swift】5.1
【iOS】13.1.3
【macOS】Catalina バージョン 10.15

if条件を使用してView修飾子を変える

ボタンをクリックすると背景色が変わるサンプルソースです。

useYellowBackgroundフラグの値をif条件で判断し、背景色を設定します。trueの場合は黄色、falseの場合は白色。
「背景色変更」ボタンをクリックすると、useYellowBackgroundフラグの内容が反転します。

SwiftUIでは@Stateで宣言されたプロパティの変更を監視し、bodyプロパティが再呼び出しされます。
この為、useYellowBackgroundプロパティが変更されるたびに、背景色がすぐに更新されます。

三項演算子による条件付きView修飾子

三項演算子を使うと、View修飾子の挙動を、より簡単に変えられます。

先程のソースのif文は、次のようにシンプルなものに置き換えることができます。

最後に

特定の条件でViewの見た目を変える方法として、if条件分岐と、三項演算子を使った例を紹介しました。
状況によって使い分けると良いでしょう。

SwiftUI
スポンサーリンク
スポンサーリンク
カピ通信

コメント