我有一个视图名称:myplay.h和myplay.m
我的视图包含一个文本字段,名称为txtplay..
它包含一个名为btnplay按钮。
在按钮事件中,我想检查is键盘是否打开,然后将其关闭。
我知道下面的代码
- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
[textField resignFirstResponder];
return TRUE;
}在按钮单击事件中
-(IBAction)btnplayclick:(id)sender
{
[self.txtplay resignFirstResponder];
....
....
}我想要一个全球密码辞职。
发布于 2011-02-05 00:24:29
试试这个:
[self.view endEditing:YES];从文档中:
endEditing:
使视图(或其嵌入的文本字段之一)重新签署first responder状态。
此方法查看当前作为第一响应者的文本字段的当前视图及其子视图层次结构。如果找到一个,它会要求该文本字段辞去第一响应者的职务。如果force参数设置为YES,文本字段将永远不会被询问;它将被强制放弃。
在iOS 2.0及更高版本中可用。
发布于 2011-02-05 00:15:45
我认为实现泛型并在任何地方重用代码的最好方法是为UIView创建一个类别:
@implementation UIView (FindFirstResponder)
- (UIView *)findFirstResonder
{
if (self.isFirstResponder) {
return self;
}
for (UIView *subView in self.subviews) {
UIView *firstResponder = [subView findFirstResonder];
if (firstResponder != nil) {
return firstResponder;
}
}
return nil;
}
@end然后像这样调用这个方法:
-(IBAction)btnplayclick:(id)sender
{
UIView *firstResponder = [self.view findFirstResonder];
[firstResponder resignFirstResponder];
}它为我完美地完成了这些技巧。
发布于 2011-02-05 00:20:37
或者干脆写
[self.view findAndResignFirstResponder];https://stackoverflow.com/questions/3531752
复制相似问题