当 UITextField.secureTextEntry 改变它的值时 Swift 得到回调

标签 swift uitextfield

我正在寻找一种方法来在其中一个 UITextFields secureTextEntry 更改值时获得回调或事件。

我需要这个的原因如下。

我扩展了 UITextField 使其具有通过 UITextField 内的按钮打开和关闭 secureTextEntry 的功能。在我的一个 View 中,我有两个 UITextField,我希望控制第一个 UITextField 上的 secureTextEntry 状态的按钮也更改另一个 UITextField 上的 secureTextEntry。我认为最好的方法是在 View 控件本身中获取回调并切换另一个 UITextField,但我找不到获取 UITextField.secureTextEntry 更改的回调的方法。

最佳答案

在自定义 UITextfield 类中

override var isSecureTextEntry:Bool {
    didSet {
        // do next
    }
}

//

let myTextF = UITextField()
var myObserve:NSKeyValueObservation? 

override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view, typically from  
     myObserve = myTextF.observe(\.isSecureTextEntry) { [weak self] (textF , change) in
       print("changed")
     }
}

关于当 UITextField.secureTextEntry 改变它的值时 Swift 得到回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51088930/

相关文章:

iphone - 自定义 UITextField/UIButton

ios - 为银行账户信息 Stripe 创建 token

swift - Swift 中的完成处理程序问题

swift - 根据tableView中的附件创建条件语句

ios - 为多个 UIAlertController 分派(dispatch) asyncAfter

ios - 如何在点击图像时弹出 UITextField 以输入数据?

iphone - iOS——处理无法在 UITextField 中设置光标位置的问题

ios - iOS 中的无障碍自定义键盘

ios - 将 NSLocalizedString 传递给 NSObject 参数的 Swift 方法无法编译

swift - 从 UITextField 获取信息