UITextField自定义清除按钮在iPhone X iOS 13上不起作用

时间:2019-09-23 18:00:40

标签: uitextfield ios13 xcode11

我在自定义UITextField中有一个自定义清除按钮,该按钮适用于模拟器以及除装有iOS 13的iPhone X Phone之外的大多数设备上。但它适用于iPhone X 13.0模拟器。

在iPhone X设备上,它不会清除字段,而只会隐藏键盘并触发textFieldDidEndEditing。它不叫clearClicked。

我正在使用的代码来自这篇帖子https://stackoverflow.com/a/53677427/12006517

如何解决此问题?

class CustomTextField: UITextField {

     // ... other code

    func initialize() {
        let clearButton = UIButton(frame: CGRect(x: 0, y: 0, width: 16, height: 16))
        clearButton.setImage(UIImage.clearButton, for: [])

        self.rightView = clearButton
        clearButton.addTarget(self, action: #selector(clearClicked), for: .touchUpInside)

        self.clearButtonMode = .never
        self.rightViewMode = .whileEditing
    }

    @objc func clearClicked(sender:UIButton) {
        self.text = ""
    }
}

0 个答案:

没有答案