ios学习笔记(四)收回软键盘的两种方式

这篇笔记介绍了在iOS应用中如何隐藏软键盘的两种方法:通过将背景视图设置为UIControl监听屏幕事件,以及处理UITextField的did end on exit事件。在示例中,创建了一个Single View Application,添加了两个UILabel和UITextField,并连接了相应的事件处理方法。
摘要由CSDN通过智能技术生成

这次讲的内容很简单:

1.首先我们还是创建一个Single View Application,然后打开MainStoryboard_iphone.storyboard,在里面放入俩lable和两个TextFiled:

2.接着开始写代码:ViewController.h:

#import <UIKit/UIKit.h>

@interface ViewController : UIViewController{
UITextField *nameField;
UITextField *numberField;
}
@property (nonatomic,retain) IBOutlet UITextField *nameField;
@property (nonatomic,retain) IBOutlet UITextField *numberField;
- (IBAction)backgroundTap:(id)sender;
- (IBAction)textFiledReturnEditing:(id)sender;
@end

ViewController.m:

#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController
@synthesize nameField;
@synthesize numberField;
- (void)viewDidLoad
{
    [super viewDidLoad];
	// Do any additional setup after loading the view, typically from a nib.
}

- (void)viewDidUnload
{
    [super viewDidUnload];
    // Release any retained subviews of the main view.
}
//点击屏幕空白view时触发的事件
- (IBAction)backgroundTap:(id)sender{
    
    [nameField resignFirstResponder];//通知文本失去第一响应者状态
    [numberField resignFirstResponder];
}

//点击return时触发的事件ß
- (IBAction)textFiledReturnEditing:(id)sender {
    [sender resignFirstResponder];
}

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
        return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown);
    } else {
        return YES;
    }
}
@end

3.接着我们连接操作和输出口:

将背景view的类别设置为UIControl,这样我们就能对屏幕的事件进行处理了,将Control的touch down输出连接到backgroundTap事件上,因为点击软键盘会触发did end on exit,那我们就把两个textFiled的did end on exit输出连接到textFiledReturnEditing事件上。当然我们不要忘记将两个textFiled控件的输出与ViewController的相应控件接口连接在一起。

4.运行程序看看效果:

点击textFiled时:



点击return或点击界面空白时:


  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值