捕获 UITextField 运行时的 textFieldDidEndEditing
catch textFieldDidEndEditing of UITextField runtime
我正在使用 objective C 方面库,在下面的情况下,我想在调用 textFieldDidEndEditing 方法时收听所有 UITextfields。
它不工作,我试过 UIButton 它工作但不用于 UITextfield 和 UITextview。
[UITextField aspect_hookSelector:@selector(textFieldDidEndEditing:) withOptions:AspectPositionAfter usingBlock:^(id<AspectInfo> aspectInfo) {
if ([[aspectInfo instance] isKindOfClass:[UITextField class]]) {
UITextField *textView = [aspectInfo instance];
NSLog(@"***** UITEXTTTTTTTTTTTTTTTTTTT click event called ");
}
}
在这种情况下我错过了什么?为什么它不起作用?
不是 100% 确定该库是如何工作的,但看起来您正在尝试监听 textFieldDidEndEditing:
调用。问题是该方法不会在 UITextField
上被调用。它在 UITextFieldDelegate
上被调用。
如果您想在任意数量的文本字段上收听 textFieldDidEndEditing:
,您可以使用内置的通知系统并订阅 UITextFieldTextDidEndEditing
通知。
我正在使用 objective C 方面库,在下面的情况下,我想在调用 textFieldDidEndEditing 方法时收听所有 UITextfields。
它不工作,我试过 UIButton 它工作但不用于 UITextfield 和 UITextview。
[UITextField aspect_hookSelector:@selector(textFieldDidEndEditing:) withOptions:AspectPositionAfter usingBlock:^(id<AspectInfo> aspectInfo) {
if ([[aspectInfo instance] isKindOfClass:[UITextField class]]) {
UITextField *textView = [aspectInfo instance];
NSLog(@"***** UITEXTTTTTTTTTTTTTTTTTTT click event called ");
}
}
在这种情况下我错过了什么?为什么它不起作用?
不是 100% 确定该库是如何工作的,但看起来您正在尝试监听 textFieldDidEndEditing:
调用。问题是该方法不会在 UITextField
上被调用。它在 UITextFieldDelegate
上被调用。
如果您想在任意数量的文本字段上收听 textFieldDidEndEditing:
,您可以使用内置的通知系统并订阅 UITextFieldTextDidEndEditing
通知。