UITextField关闭虚拟键盘的几种方法

哈希流星
• 阅读 2907

1、使用它的委托UITextFieldDelegate中的方法textFieldShouldReturn:来关闭虚拟键盘。

- (BOOL)textFieldShouldReturn:(UITextField *)textField {  
    if ((textField == self.birdNameInput) || (textField == self.locationInput)) {  
        [textField resignFirstResponder];  
    }  
    return YES;  
}

2、将它的属性中Return Key修改为done,再定义一个方法和Done键的Did End On Exit连接。通过轻击done键触发这个事件来关闭虚拟键盘

- (IBAction) textFieldDoneEditing:(id)sender  
{  
    [sender resignFirstResponder];  
}

3、通过轻击键盘之外的空白区域关闭虚拟键盘。

这种方式有多个解决办法,比如 给其所在的ViewController添加手势 或者 增加一个透明按钮增加点击事件,这里我只提供一种最简单的方法

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {  
    [[self view] endEditing:YES];  
}
点赞
收藏
评论区
推荐文章
blmius blmius
4年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
USB中文网 USB中文网
4年前
Windows下虚拟键盘鼠标(USB中文网)
最近整理了一下代码,完全自主研发。功能比较简单,就是在Windows操作系统下虚拟一个标准的键盘和鼠标。键盘的按键可以通过应用软件下发对应的报告内容,再由虚拟的键盘转成系统的标准键盘消息,这样相当于系统中多了一个键盘。键盘的报表内容格式见:鼠标类似,可以实现鼠标指针的移动,滚轮效果和鼠标的点击事件。当然这也功能也是通过应用层的程序控制的。鼠标的报表内容格式见
红烧土豆泥 红烧土豆泥
4年前
关于如何优雅的关闭JVM
关于如何优雅的关闭JVM使用的类及其方法:Runtime.addShutdownloadHook(Threadhook)虚拟机关闭以及响应两种事件:程序正常退出:最后一个守护线程退出或者调用exit(相当于System,exit)方法时虚拟机响应用户中断:(键入^C)或者系统范围内的事件(用户注销或者系统关闭)而终止language/
Stella981 Stella981
4年前
KVM调整cpu和内存
一.修改kvm虚拟机的配置1、virsheditcentos7找到“memory”和“vcpu”标签,将<namecentos7</name<uuid2220a6d1a36a4fbb8523e078b3dfe795</uuid
Stella981 Stella981
4年前
Flutter TextField设置默认值默认值和光标位置
主要通过controller实现,具体代码如下TextField(          //输入键盘类型keyboardType:TextInputType.text,autofocus:true,decoration:Inpu
Stella981 Stella981
4年前
Linux基础系统优化(二)
SELinux功能SELinux(SecurityEnhancedLinux)是美国国家安全局(NSA)对于强制访问控制的实现,这个功能管理员又爱又恨,大多数生产环境也是关闭的做法,安全手段使用其他方法。大多数ssh连接不上虚拟机,都是因为防火墙和selinux阻挡了永久关闭方式:1.修改配
Wesley13 Wesley13
4年前
IOS键盘的相关设置(UITextfield)
一、键盘风格UIKit框架支持8种风格键盘。typedefenum{UIKeyboardTypeDefault,//默认键盘:支持所有字符UIKeyboardTypeASCIICapable,//支持ASCII的默认键盘UIKeyboardTypeNumbersAndPunctuation,//标准电话键盘,支持
Wesley13 Wesley13
4年前
Java静态方法和实例方法 java中的数组作为形参传入
Java静态方法和实例方法java中的数组作为形参传入Java虚拟机启动一个Java程序的时候,会诞生一个虚拟机实例,当程序关闭退出时,该实例会消失。如果一个机器上运行着三个Java程序,即有三个Java虚拟机实例Java虚拟机会调用某个初始类的main()方法运行一个Java程序,此方法将会作为程序的初始线程启动,任何线程都是
Stella981 Stella981
4年前
Android:EditText属性大全(不局限于仅仅是EditText)
注:整理来源包括网络以及自己开发,可能不完全正确或者最合理,仅供参考。一、inputType属性inputType属性在EditText输入值时启动的虚拟键盘的风格有着重要的作用。比如有时需要虚拟键盘只为字符或只为数字。<EditText//电话号码android:inputType
Wesley13 Wesley13
4年前
Java连接excel实现:通过姓名查找id和通过id查找姓名
注意每个方法结束都要关闭workbook;还有getIdbyname()方法中字符串flag与name的比较,一定要用equals()方法!!!;剩下的不多解释,注释都在代码中:importjava.io.FileInputStream;importjava.io.IOException;importjava.i