将self分配给UITextFieldDelegate适用于iOS 8而不是iOS 7

时间:2014-10-18 10:06:43

标签: ios ios7 uitextfield ios8 uitextfielddelegate

过去我已经多次完成了UITableView和UICollectonView的子类化,其中我已经将self分配给了委托和数据源,并且它工作正常。

今天我尝试创建UITextField的子类,并且我将自己分配给其委托

self.delegate = self

其中委托继承自UITextFiled。 在上面的例子中,这是在iOS 7中永久挂起应用程序,但适用于iOS 8。 另一个令人惊讶的事情是,当我尝试从硬件键盘输入文本时,它可以正常工作但是在屏幕键盘输入字符时会被绞死。

可能是什么原因,任何人都可以帮助我理解吗?

1 个答案:

答案 0 :(得分:0)

我有一个类似的问题,我想出来了。默认情况下,模拟器不会提升键盘。如果有可用且可检测的硬件键盘(例如在MacBook上),模拟器将从中寻找输入并且模拟的iPhone键盘不会升起。这给出了委托问题的外观。您只需在模拟器的硬件菜单中,在键盘下,取消选择“连接硬件键盘”选项。我希望这有帮助。