iOS-UITextField收起键盘和拓展

原创 2015年07月08日 00:03:22

UITextFiled也挺常用的,用于输入文本,一般用于登录界面,输入账号密码,验证码等。让我们来看下这个玩意的基本属性.
基本属性
这些属性都是个取所求,也比较简单,大家可以自己尝试下。

UITextField的收起键盘的方法

打开键盘是 [_testTextField becomeFirstResponder];
收起键盘是 [_testTextField resignFirstResponder];

1.用代理方法收起键盘的好处有两点:
1).当当前页面有多个textField时,只要设置同一个代理,就可以收起键盘。
2).代码简单明了,只需按键盘上的return就可以收回

- (BOOL)textFieldShouldReturn:(UITextField *)textField {
    [textField resignFirstResponder];//收起键盘
    return YES;
}// called when 'return' key pressed. return NO to ignore.该方法在键盘输入return时调用

2.点击textField之外的区域收起键盘

这个方法也比较常用,很多APP都是采用这种方式,如微信,qq,因为聊天时输入框就一个,因此用这种方式收回键盘非常方便。

- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {//触摸事件中的触摸结束时会调用
    if (![_testTextField isExclusiveTouch]) {//判断点击是否在textfield和键盘以外
        [_testTextField resignFirstResponder];//收起键盘
    }
}

个人感觉这个方法适合当前视图中只有一个textfield,如果有多个,那判断条件会有点复杂,不如用代理。

3.用控制事件点击UITextField内部收起键盘

UITextField的父类是UIControl,既然是这类,就可以添加事件。

    [_testTextField addTarget:self action:@selector(tapAction) forControlEvents:UIControlEventTouchDown];//添加点击事件,- -,这里我试了下touchupinside并不可以,touchdown的效果更好一些

- (void)tapAction {//事件点击动作
    [_testTextField resignFirstResponder];
}

这个方法乍一看好像会永远弹不出键盘,因为点击就是收起,但是事实呢,并不会,点击TextField可以切换显示或隐藏键盘,也非常方便!

希望这几种收起键盘的方式对大家有帮助,谢谢!

iOS之UITextField对输入的内容的长度限制和内容限制

UITextField对输入的内容的长度限制和内容限制

iOS UIFont字体大小适配,利用类别写简单的runtime替换方法

通常我们不做字体大小的适配,但有时候需求要你在不同尺寸屏幕上显示合适的字体大小,如果你用的系统字体大小方法systemFontOfSize:,那么可以写一个类别,然后什么都不用做,自动替换所有字体大小...

iOS图文攻略之UITextfield 键盘回收

键盘回收即点击虚拟键盘上的return按钮使得键盘收回去。 键盘回收分为三个步骤 1、将AppDelete作为UITextField的delegate 2、AppDelete.h文件接受UITex...

iOS之UITextField怎么自定义键盘的return键

//初始化textfield并设置位置及大小 UITextField *text = [[UITextField alloc]initWithFrame:CGRectMake(20, 20, 130...

iOS开发笔记--设置UITextField键盘上return key不可点击

今天在做搜索栏时候,发现系统软键盘有下角的“搜索”按钮在输入框无论有没有文字的情况下都是可以点击的状态,记得其他软件在无文字的状态下是不可点击的状态,起初还以为要对textfield的内容做一个判断,...
  • errvv
  • errvv
  • 2016年01月26日 10:11
  • 203

IOS键盘的相关设置(UITextfield)

一、键盘风格   UIKit框架支持8种风格键盘。 typedef enum {      UIKeyboardTypeDefault,                // 默认键盘:支持...

IOS——UITextField被键盘遮蔽解决方案

UITextField被键盘遮蔽解决方案

ios--解决键盘遮挡UITextField控件的问题(方式一)

参考资料:http://blog.csdn.net/ryantang03/article/details/8203605 主要功能包括: 自适应键盘出现后View的高度调整,防...

iOS UI篇- UITextField键盘相关处理

看示例代码: #import "ViewController.h" #import "NetworkManagement.h"// 键盘高度缓冲值 #define INTERVAL_KEYBOARD ...

iOS 控件之UITextField及键盘挡住处理方法(欢迎大家提建议和分享)

发现ios的UITextField如果在屏幕的最底部的时候,键盘不能自动的调整界面的布局,需要手动的调整位置才可以,所以自己研究和拿着笔话,想写一个通用的方法来实现每一个界面自动适配键盘的位置,这样的...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:iOS-UITextField收起键盘和拓展
举报原因:
原因补充:

(最多只允许输入30个字)