はじめに
入力フォームに値が入力された時にボタンをクリックできる実装について説明していきます。
それに加え、ボタンの色を変化させる方法について初めて知ったのでメモとして残しておきます!
テキストフォーム、ボタンの作成方法についてはここでは説明しませんので悪しからず。
環境
Xcode 13.4.1
Swift 5.6.1
MacOS 12.4
入力値チェック
書き方
.disabled(変数名.isEmpty)
.isEmpty
により文字列が空かどうかをbool値として扱う。
この値がtrueならばクリック不可となり、falseならばクリック可能となる。
ボタンの色を変える
三項演算子を用いることでif文のように処理を分けることが可能である。
これによりViewの挙動を容易に変化できる。
bool値 ? trueの場合 : falseの場合
入力フィールドに文字列が書かれていない時、ボタンの背景色はグレーで文字の色は黒。文字が入力された時、背景色は青色で文字の色は白になるようにする。
.foregroundColor(name.isEmpty ? Color.black : Color.white)
.background(name.isEmpty ? Color.gray : Color.blue)
結果
最後に
最後まで読んでいただきありがとうございました。
Qiitaの書き方などまだまだ未熟ですので、アドバイスいただけると幸いです。