TextField输入结束后让键盘消失的两个技巧
一、点击Return键消失
需要调用Did End On Exit事件。
- (IBAction) doneEditing:(id) sender {
[sender resignFirstResponder];}
当你输入结束后点击Return键,启动Did End On Exit事件。resignFirstResponder会撤消UITextField的第一响应状态。意味着你不再想跟textfield交互,不再需要键盘。
PS:有时你需要视图显示时就出现键盘,从而不需要用户去等待。
- (void)viewDidLoad {
[textField becomeFirstResponder];
[super viewDidLoad];
}
二、点击textField以外的位置,让键盘消失
添加一个UIButton按钮覆盖整个屏幕。点击editor->arrange->send to back将它放在视图底层。bgTouched:方法关联button的TouchUpInside事件
-(IBAction) bgTouched:(id) sender
{
[textField resignFirstResponder];
}
理解响应者链方法:
多数用户输入会产生置于响应者链中的一个事件。响应者链是一组对象链接集,其中大多数是通过视图层次结构向上延伸的。任何输入都是由第一响应者先捕捉到的,该响应者通常是与用户直接交互的对象。如果此对象不能解析输入,那么它会将输入向上发送到其超视图(例如,标签可能会将输入发送到其全屏幕视图),然后再发送到其超视图的超视图,不断连锁向上(例如,向上至视图,然后向上至视图控制器)。如果输入沿着视图层次结构一直向上至窗口对象,那么之后,它会被发送到应用程序本身,并最终传递到应用程序委托。
这些对象中的任何一个都可以选择处理一个事件,这将会停止在响应者链中向上传递。按照标准的MVC模型,你通常要将事件响应构建到UIViewController对象中,此对象在响应者链中相当远。
对于任一种UIControl对象,如按钮、滑块和切换开关,事件通常会转变成动作。事件报告屏幕的触摸,而动作则报告控件的操作,因此也更易读。动作所遵循的响应层次结构略有不同。
转载于:https://blog.51cto.com/sookie/1058687
相关文章:

机器学习 决策树 ID3
构造决策树时需要解决的第一个问题是:当前数据集中哪个特征在划分数据分类时起决定性作用。 划分数据集的原则:将无序的数据变得更加有序 信息增益:在划分数据集前后信息发生的变化 获得信息增益最大的特征就是最好的特征 熵:信息…

centos6.5原生系统修改ceph-mon 的ELF来让其加载低版本glibc库函数
文章目录Step 1:glibc-2.17 被libc.so.6库依赖,升级glibc库Step2:升级编译器-->4.8.2可以正常编译glibc2.17Step3:修改ELF,降低ceph-mon依赖的库函数版本解决ceph-mon调用高版本libc库(修改动态库链接表ELF)Step 1:glibc-2.17 …

如何创建一个基础jQuery插件
如何创建一个基础插件 How to Create a Basic Plugin 有时你想使一块功能性的代码在你代码的任何地方有效.比如,也许你想调用jQuery对象的一个方法,对该对象进行一系列的操作.可能你写了一个真正有用的实用函数,想它能够轻易的移植到其他项目.在这种情况下,你可能想写一个插件.…

rk3399在linux机上烧写img,烧写固件 — TB-96AI documentation
Window主机烧写固件1、安装Windows PC端USB驱动(首次烧写执行)。2、双击DriverAssitant_v4.5DriverInstall.exe打开安装程序,点击“驱动安装”按提示安装驱动即可,安装界面如下所示:3、Type-C线连接主机端的USB接口和RK3399Pro TB-96AI开发板的Type-C接口…

Eclipse,Mycclipse自动补全快捷键设置
为什么80%的码农都做不了架构师?>>> eclipse3.3及以后的版本中中把内容助手(content assist)的快捷键由 alt /改成了ctrl space,这又刚好跟我们操作系统的切换输入法的快捷键冲突,所以造成内容助手不能使用了,给写代…

php 无限极分类
无限极分类1: 1 public function judeg($id)2 {3 $rs Db::name(finance_class) -> field(parent_code) -> where(id,$id) -> select();4 $i 1;5 foreach($rs as $k > $v){6 if($v[parent_code] <> 0){7 $i $this -…

ceph-bluestore-tool基本使用
主要是在bluestore的实例上执行低级管理操作的使用程序,是ceph bluestore的管理工具 命令 help显示帮助信息fsck [--deep]对bluestore元数据进行一致性检查。如果指定了–deep,还要读取所有对象数据并验证校验和repair运行一致性检查 并修复我们可以发生的任何错误bluefs-expo…

Android基础是什么,Android基础概念
android {compileSdkVersion 23buildToolsVersion “23.0.1”defaultConfig {applicationId “com.example.checkyourtargetsdk"minSdkVersion 15targetSdkVersion 23versionCode 1versionName “1.0”}以上是Android工程里名称为app的module的build.gradle文件其中的内容…

HDOJ 1060 Leftmost Digit
Author Ignatius.L题目大意:1.第一行输入一个整数T代表接下来有T组测试数据。2.接下来的T行,每行输入一个整数(1<N<1,000,000,000)。3.输出结果为N^N(N的N次方)最左边的那一位数(即最高位…

WPF-002 下拉列表的简单实现
最近在一个WPF项目中用到一个下拉列表,随着用户输入字符而进行显示,使用了绑定等知识,虽然实现比较简单,可是在性能上也是想了很多办法终于才勉强可以用,与大家分享下。 用于页面绑定的模型类: public clas…

洛谷:P3950 部落冲突
原题地址:https://www.luogu.org/problemnew/show/P3950 题目简述 给定一棵树,每次给定一个操作,有如下两种: 将某条边染黑 2.询问给定的u,v两点间是否有边被染黑思路 询问两点间是否有边被染黑只需要在求LCA时判一下就行。所以直接上树链剖分…

深入理解ceph-disk prepare 源码逻辑
文章目录CEPH-DISK代码逻辑DEF MAIN:DEF PARSE_ARGS:DEF Prepare.set_subparser(subparsers)def _prepare(self):PrepareBluestore的_prepare函数def prepare(self, *to_prepare_list):PrepareData类中的prepare函数def prepare_device(self, *to_prepare_list): #prepare_devi…

Deep Learning 学习随记(三)续 Softmax regression练习
上一篇讲的Softmax regression,当时时间不够,没把练习做完。这几天学车有点累,又特别想动动手自己写写matlab代码 所以等到了现在,这篇文章就当做上一篇的续吧。 回顾: 上一篇最后给出了softmax regression的代价函数和…

html画三个重叠的矩形,html5 实现两个矩形的叠加
Canvas Primer - Example: Drawing shadowswindow.addEventListener(load, function () {//得到canvas,并检测是否支持canvasvar elem document.getElementById(myCanvas);if (!elem || !elem.getContext) {return;}// 得到可以画图的上下文contextvar context el…

sqlplusw下登录sys账户
今天使用sqlplusw时,发现每次使用sys用户登录时总是报错,提示要以sysdba或者sysoper的身份登录,错误提示如下图所示:可是界面上没地方可以输入角色的地方呀,后经尝试发现,在口令输入框里首先输入密码&#…

mybatis =或这个=提示错误Tag name expecte问题解决
解决方案: 1、将<号或者>号进行转义 DATE_SUB(CURDATE(), INTERVAL 31 DAY) < DATE(created) 2、使用<![CDATA[ ]]>符号进行说明 <![CDATA[DATE_SUB(CURDATE(), INTERVAL 31 DAY) < DATE(created)]]> 附: 附录:常见…

s-sgdisk源码分析 “--set-alignment=value分区对齐参数”
文章目录边界对齐子命令使用源码分析sgdisk.cc main函数入口gptcl.cc DoOptions解析并执行具体命令函数gpt.cc CreatePartition创建分区函数,设置起始扇区对齐gpt.cc Align分区对齐函数,设置起始扇区对齐sgdisk命令是由 gdisk-0.8.6-4.el7.x86_64程序包安…

NuGet学习笔记(3) 搭建属于自己的NuGet服务器
文章导读 创建NuGetServer Web站点 发布站点到IIS 添加本地站点到包包数据源 在上一篇NuGet学习笔记(2) 使用图形化界面打包自己的类库 中讲解了如何打包自己的类库,接下来进行最重要的一步,从零开始搭建属于自己的NuGet服务器,诚然园子里及其…

计算机网络共享打不开,网络和共享中心打不开,共享无法访问没有权限
在Win7系统下如果别的计算机设置了共享,那么在本机设置网络发现后就可以打开网络搜索到共享计算机和共享文件了,不过一些朋友反馈win7系统网络发现无法启用的问题,下面小编整理了解决方法,大家可以参考一下哦。解决方法如下&#…
千万不要把 bool 当成函数参数
我们有很多 Coding Style 或 代码规范。 但这一条可能会经常被我们所遗忘,就是我们 经常会在函数的参数里使用bool参数,这会大大地降低代码的可读性。 不信?我们先来看看下面的代码。 当你读到下面的代码,你会觉得这个代码是什么意…

修改ceph-disk源码,增加指定ceph.conf部署osd的功能
文章目录 ceph环境源码修改 主文件:`ceph-disk/main.py`main函数入口parse_args(argv)增加子命令解析get_conf函数使`conf`生效修改所有调用get_conf函数的上级函数参数配置由于最近工作中需要优化osd部署流程,单节点并发加盘过程需要指定特定conf文件,来完成单盘db,wal分区…

相关计算机专业的英语文献,英文文献及翻译计算机专业.doc
英文文献及翻译计算机专业外文资料翻译—英文原文NET-BASED TASK MANAGEMENT SYSTEMHector Garcia-Molina, Jeffrey D. Ullman, Jennifer WisdomABSTRACTIn net-based collaborative design environment, design resources become more and more varied and complex. Besides c…

作业 3 应用分支与循环结构解决问题 统计字符个数
/*统计字符,包括空格或回车,数字字符和其他字符*/#include<stdio.h> int main(void) {int digit,space,letter,other; /*定义4个变量分别存放统计结果*/ char ch;int i;digitspaceletterother0; /*置…

php后期静态绑定
从php5.3开始,php增加了一个叫后期绑定的功能,用于在继承范围内引用静态调用的类 该功能从语言内部角度考虑北命名为“后期静态绑定”;“后期绑定”意思说:static::不再被解析为定义当前方法所在的类&#…

pytest 9 pytest-datadir读取文件信息
安装:pip install pytest-datadir 介绍:用于操作测试数据目录和文件的插件。pytest-datadir他会寻找包含测试模块名字的文件夹或者全局的一个文件夹名字为data下的数据。比如以下的一个结构: firstdemo.py可以从test_firstdemo文件夹下的文件…

深入理解ceph-disk activate 源码逻辑
文章目录CEPH-DISK代码逻辑Activate osd的主要逻辑如下DEF main_activate激活osd的入口函数DEF mount_activate挂载临时目录,分配osd id并初始化osdDEF activate 分配osd_id以及初始化osdCEPH-DISK代码逻辑 本文在上文 :深入理解ceph-disk prepare 源码逻辑基础上描…

simple_html_dom meta,HTML DOM Meta content 属性
HTML DOM Meta content 属性Meta 对象定义和用法content 属性可设置或者返回 meta 元素 content 属性值。content 属性指定了 meta 信息的内容。注意: 这个属性可用的值依赖于name 和httpEquiv 属性的值。语法设置 content 属性:linkObject.content"…

struts2登录后返回登录前的页面
在Action中添加 String getUrl() { return ServletActionContext.getRequest().getHeader("referer"); } 然后配置struts的这个Action的result为:<result type"redirect">${url}</resu…

Exchange 2010 恢复误删除的邮箱账户及其邮箱
在误删除邮箱后,AD中相应的账号也会随之删除,此时该如何恢复? 先来模拟邮箱被误删除,在EMC控制台中删除别名为jqq的邮箱 打开ADUC,发现相应的jqq账号也被删除了: 1.恢复AD账号 下载运行ADRecycle Bin,点击【…

Python 函数初识 (1)
一、今日主要内容 认识函数 函数:对功能或者动作的封装(定义) 语法: def 函数名字(形参) 函数体 函数的调用格式:函数名(实参) 函数的返回值 关键字:return 终止函数的运行 1、函数内部不写return,默认函数末尾返回…