1
2

More than 1 year has passed since last update.

【SwiftUI】入力値チェック

Posted at

はじめに

入力フォームに値が入力された時にボタンをクリックできる実装について説明していきます。
それに加え、ボタンの色を変化させる方法について初めて知ったのでメモとして残しておきます!
テキストフォーム、ボタンの作成方法についてはここでは説明しませんので悪しからず。

環境

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)

結果

テキストが入力される前
Simulator Screen Shot - iPhone 13 - 2022-07-05 at 00.46.15.png
テキストが入力された後
Simulator Screen Shot - iPhone 13 - 2022-07-05 at 00.54.41.png

最後に

最後まで読んでいただきありがとうございました。
Qiitaの書き方などまだまだ未熟ですので、アドバイスいただけると幸いです。

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2