返回介绍

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

发布于 2025-02-28 13:01:40 字数 2233 浏览 0 评论 0 收藏 0

这次讲的内容很简单:

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 或点击界面空白时:

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文