禁用 swiftui 文本字段中的返回键

Dit*_*tza 6 textfield swiftui

我想仅在发生某种情况时才启用按键盘返回键。
例如:

SecureField("", text:$password)
    .focused($passwordFocused)
    .onSubmit {
        if password.count >= 8 {
            joinNetwork()
        }
    }
    .submitLabel(.join)
Run Code Online (Sandbox Code Playgroud)

如果密码不符合条件,我想禁用返回键。或者至少将返回按钮的颜色更改为灰色。

Fau*_*ult -1

用于.onChange根据用户类型更新状态变量。这是一个小示例,根据密码长度将密码项目符号颜色从粉红色更改为黑色。根据您的目的更改此设置

SecureField("", text:$password)
    .onChange(of: password, perform: { _ in
        isPasswordViable = (password.count >= 8)
    })
    .onSubmit {
        guard isPasswordViable else { return }
        print("submitted \(password)")
    }
    .foregroundColor(isPasswordViable ? .black : .pink)
Run Code Online (Sandbox Code Playgroud)