当键盘升起时我移动 View 时,我试图找到哪个文本字段处于事件状态。我正在尝试通过 ScrollView 的 subview 在我的 View Controller 中设置一个属性。
这是我用来在 ScrollView 中显示 View 的代码
-(void)displayView:(UIViewController *)viewController{
[[viewFrame subviews] makeObjectsPerformSelector:@selector(removeFromSuperview)];
[viewFrame scrollRectToVisible:CGRectMake(0, 0, 1, 1)
animated:NO];
[viewFrame addSubview: viewController.view];
_currentViewController = viewController;
}
--编辑--
我改变了对这个问题的思考方式。抱歉,我发布问题时模棱两可。当时我精疲力尽,但在我的脑海里,这是有道理的。
一个不同但相似的问题:是否有 UITextArea 和 UITextView 的公共(public)子类可以提供 firstResponder 的来源?还是在找到来源之前我还必须检查 firstResponder 的类?
最佳答案
您需要搜索已成为第一响应者的对象。第一响应者对象是使用键盘的对象(实际上,他是具有用户输入焦点的对象)。要检查哪个文本字段使用键盘,请遍历您的文本字段(或仅遍历所有 subview )并使用 isFirstResponder
方法。
编辑: 根据要求,示例代码,假设所有文本字段都是 View Controller View 的 subview :
for (UIView *view in self.view.subviews) {
if (view.isFirstResponder) {
[self doSomethingCleverWithView:view];
}
}
关于ios - 试图找到哪个文本字段处于事件状态 ios,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12173802/