[SwiftUI]SecureFieldにフォーカスを合わせるには?

SwiftUI

どうも、ちょげ(@chogetarou)です。

SecureFieldにフォーカスを合わせる方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

SecureFieldにフォーカスを合わせるには、focused修飾子を使います。

まず、フォーカスを合わせるかどうかを保持するための変数を用意します。

@FocusState var onFocus : Bool

次に、SecureFieldにfocused修飾子を付与し、引数に用意した変数の参照を渡します。

SecureField("", text: $text)
    .focused($onFocus)

最後に、コード上で変数の値をtrueにします。

self.onFocus = true

onFocusがtrueになった時に、SecureFieldにフォーカスが向けられます。

使用例

以下は、使用例です。

struct ContentView: View {
    @FocusState var onFocus : Bool
    @State var password = ""
    var body: some View {
        
        VStack{
            SecureField("パスワード",text: $password)
                .padding()
                .focused($onFocus)
                
            Button("Focus") {
                self.onFocus.toggle()
            }
            .padding()
        }
    }
}

コメント

タイトルとURLをコピーしました