首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >uikeyboard键盘返回

uikeyboard键盘返回
EN

Stack Overflow用户
提问于 2010-08-20 22:21:29
回答 4查看 1.2K关注 0票数 0

我有一个视图名称:myplay.h和myplay.m

我的视图包含一个文本字段,名称为txtplay..

它包含一个名为btnplay按钮。

在按钮事件中,我想检查is键盘是否打开,然后将其关闭。

我知道下面的代码

代码语言:javascript
复制
- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
   [textField resignFirstResponder];
   return TRUE;
}

在按钮单击事件中

代码语言:javascript
复制
-(IBAction)btnplayclick:(id)sender
{
  [self.txtplay resignFirstResponder];  
  ....
  ....
}

我想要一个全球密码辞职。

EN

回答 4

Stack Overflow用户

发布于 2011-02-05 00:24:29

试试这个:

代码语言:javascript
复制
[self.view endEditing:YES];

从文档中:

endEditing:

使视图(或其嵌入的文本字段之一)重新签署first responder状态。

  • (BOOL)endEditing:(BOOL)force

此方法查看当前作为第一响应者的文本字段的当前视图及其子视图层次结构。如果找到一个,它会要求该文本字段辞去第一响应者的职务。如果force参数设置为YES,文本字段将永远不会被询问;它将被强制放弃。

在iOS 2.0及更高版本中可用。

票数 3
EN

Stack Overflow用户

发布于 2011-02-05 00:15:45

我认为实现泛型并在任何地方重用代码的最好方法是为UIView创建一个类别:

代码语言:javascript
复制
@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

然后像这样调用这个方法:

代码语言:javascript
复制
-(IBAction)btnplayclick:(id)sender
{
  UIView *firstResponder = [self.view findFirstResonder];
  [firstResponder resignFirstResponder];

}

它为我完美地完成了这些技巧。

票数 0
EN

Stack Overflow用户

发布于 2011-02-05 00:20:37

或者干脆写

代码语言:javascript
复制
  [self.view findAndResignFirstResponder];
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3531752

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档