[iOS]如何在textField和textView中隐藏键盘

本文详细介绍了使用Swift语言开发iOS应用的基本步骤,包括环境搭建、基础语法、UI设计、网络请求等核心内容,帮助开发者快速掌握iOS开发技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

#pragma mark - UITextField Delegate Method  方法    
//#pragma mark用于便于在程序中查询

- (BOOL)textFieldShouldReturn:(UITextField *)textField {    //textFieldShouldReturn 是用户自己定义的方法
    [textField resignFirstResponder];   //通过委托,通知textField,放弃第一响应者;
    return YES; }  //返回YES,将会放弃第一响应者;

#pragma mark - UITextView Delegate Method 
-(BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *) text
{
    if([text isEqualToString:@"\n"]) {
        [textView resignFirstResponder];
        return NO; }
    return YES;
}


-(void) viewWillAppear:(BOOL)animated {
    //注册键盘出现通知
    [[NSNotificationCenter defaultCenter] addObserver:self
        selector:@selector (keyboardDidShow:)
        name: UIKeyboardDidShowNotification object:nil];
    //注册键盘隐藏通知
    [[NSNotificationCenter defaultCenter] addObserver:self
        selector:@selector (keyboardDidHide:)
        name: UIKeyboardDidHideNotification object:nil];
    
    [super viewWillAppear:animated];
}


-(void) viewWillDisappear:(BOOL)animated {
    //解除键盘出现通知
    [[NSNotificationCenter defaultCenter] removeObserver:self
        name: UIKeyboardDidShowNotification object:nil];
    
    //解除键盘隐藏通知
    [[NSNotificationCenter defaultCenter] removeObserver:self
        name: UIKeyboardDidHideNotification object:nil];
    
    [super viewWillDisappear:animated];
}

-(void) keyboardDidShow: (NSNotification *)notif {
    NSLog(@"键盘打开"); }

-(void) keyboardDidHide: (NSNotification *)notif {
    NSLog(@"键盘关闭"); }


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

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值