【发布时间】:2015-11-06 00:37:06
【问题描述】:
在我的视图控制器中,我订阅了UIKeyboardWillShowNotification:
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(keyboardWillShow:)
name:UIKeyboardWillShowNotification
object:nil];
所以在我的keyboardWillShow: 方法中,我可以从通知中检索有关键盘的一些信息。但我想要的是获得对启动键盘的实际文本字段的引用。我在谷歌中找不到如何做到这一点,我怀疑这可能是不可能的,但有人可能知道。如果确实不可能,那么我想知道是否有可能使其反向 - 通过引用文本字段来获取有关键盘的信息。谢谢
【问题讨论】:
-
你应该使用
UITextField delegate函数textFieldShouldBeginEditing:当你的键盘出现时这个委托函数会被调用,并保存这个函数的UITextField引用? -
是的,我当然知道,但在当前架构中对我来说并不方便。如果我没有找到其他任何东西,我将使用这种方法作为最后的手段
-
我希望我可以为@iphonic 添加+2:只有
textFieldShouldBeginEditing:有效。keyboardWillShow不稳定,不能与硬件键盘(蓝牙,iPad 上常见)一起使用 -
@iphonic 100% 正确。谢谢!
标签: ios objective-c cocoa-touch uitextfield uikit