首页 > 代码库 > IOS开发隐藏键盘的4种方法

IOS开发隐藏键盘的4种方法

IOS开发隐藏键盘的4种方法

开发的app中常会用到键盘输入完成后隐藏键盘的情况.在此总结了4种方法来实现我们的目的.

方法一——delegate方式

第一种隐藏键盘的方法,称为delegate三步法: 
1. 遵循(委托/代理); 
2. 调用; 
3. 关联头文件(ViewController.h)中遵循代理 。 代码如下:

#import <UIKit/UIKit.h>  
@interface ViewController : UIViewController<UITextFieldDelegate>  
@end

 

在实现文件(ViewController.m)中,调用方法:

#pragma --mark textFieldDelegate  
//调用delete方法,<UITextFieldDelegate>  
-(BOOL)textFieldShouldReturn:(UITextField *)textField  
{  
    [textField resignFirstResponder];//释放第一响应者  
    return YES;  
}

 

其中代码#pragma --mark textFieldDelegate,是将它下面方法:textFieldShouldReturn标记到textFieldDelegate的类别下.如下图所示:

技术分享

遵循代理,并且创建方法后,剩下的一步就是建立连接了. 
选中控件后,按住control键拖拽到view Controller上,选择delegate.连接就建立好了.

技术分享

建立连接后,右击进行连接的控件后,可以看到. 
技术分享

command+r运行后,输入按键盘的return键即可实现键盘隐藏.

方法二——事件响应法:

直接选中输入控件,拖拽该控件创建一个action和outlet. 
技术分享 
在实现文件中,实现action.

- (IBAction)didEnd:(id)sender {  
    [self.didTextfield resignFirstResponder];  
}

方法三——点击空白处,隐藏键盘

当点击空白位置时,隐藏键盘的方法. 
选中视图后,将class(原来为UIView)更改为UIControl——(这是因为:UIControl是 UIView 的子类,具有后者的所有外观和行为,同时又能激发事件),然后为View对象创建一个touch up inside的触摸事件,为输入控件创建一个outlet. 
技术分享

技术分享

将action实现行为.

- (IBAction)viewClicked:(id)sender{  
    //获取文本框对象后,退出第一响应者  
    [self.textField resignFirstResponder];  
}  

 

方法四——奇技淫巧(不常用)

巧用UIButton.将按钮控件铺满全屏,去掉上面的文字,设置背景色与视图色一致(这里为突出效果,按钮背景色设置为红色). 
为UIButton对象,创建一个touch up inside的action,为文本框创建一个outlet,然后实现action,

- (IBAction)btnTap:(id)sender {  
    [self.textField resignFirstResponder];  
}  

技术分享

IOS开发隐藏键盘的4种方法