编辑自定义UITextField后应用程序冻结

And*_*rei 6 objective-c uitextfield ios

我有一个自定义UITextField用于验证非空输入,正确的电子邮件,大于x字符的密码等.

UITextField有一个委托给自己,因为我做的所有文本字段对象本身的验证.不确定这是不是问题.

此自定义UITextField在.XIB文件中创建.

在编辑文本字段本身时,文本字段有时会锁定应用程序.当我按下键盘上的"下一步"按钮时,它通常也会锁定(用于转到需要填充的下一个文本字段).

Xcode没有给出错误(例如循环错误,我假设它是),应用程序只是锁定.这不会一直发生,但通常情况下,如果我用文字强调测试它,然后按"下一步",它可能会锁定.

该应用程序不会崩溃...它不会返回到主屏幕,但它实际上只是锁定,并保持无响应.

有任何想法吗?如果您需要更多信息来解决这个问题,请与我们联系.我此刻不知所措.


编辑:解决了,显然将UITextField的委托设置为自身并不是一个好主意.我最终做的是创建一个单独的类,专门作为该类的代理UITextField和执行该类中的所有逻辑.该类还有一个属性连接到它是委托的文本字段.

And*_*rei 7

我也会在这里写下答案:

显然,将UITextField的委托设置为自身并不是一个好主意,因为它最终会进入循环.

我最终要做的是创建一个单独的类,专门处理UITextField的委托并执行该类中的所有逻辑.该类还有一个属性连接到它是委托的文本字段.