UITextField在6SP上的一个问题

在对UITextField做字数输入限制的时候,在其他机型上

func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool

这个函数无论是键盘输入还是联想词输入都会被响应,但唯独6sPlus上真机上不会被响应, 这个应该是苹果的一个bug

解决方案是通过UITextField的Editing Did Change 时间来做字数输入限制,如果超过字数,则把超过的部分截取掉,然后重新为TextField赋值。

你可能感兴趣的:(UITextField在6SP上的一个问题)