iOSiOS知识收录程序员

iOS--实现键盘退出

2015-08-30  本文已影响5053人  三木成森

首先说下,我写这些东西的初衷吧.我写这些东西并不是来显示自己多流弊,多牛叉,因为这些东西本来就很简单,很基础的知识点,大家上网百度一下基本都能找到,但是我为何还要写这些东西呢?一方面是因为我当年是菜鸟的时候,再网上查找资料,确实能找到很多相关的资料,但是能看懂的就不多了,自己要慢慢的去扣知识点,很累,而且有时候看完那些大拿们写的代码,还是是是而非的感觉,并不是很懂.因此就想自己写一些简单的东西,浅显易懂的,让初学者学起来不那么累.

上篇文章对UITextField的协议UITextFieldDelegate中方法的作用做了一个简单的介绍.接下来我简单的介绍下如何点击空白处,让键盘退下去.

由于没用封装,所以直接在空白工程的AppDelegate.m的方法中开写.我们首先需要布局一个和屏幕等大的视图,以这个视图为根视图添加其他视图控件,这样的话,删除这个视图,就可以把它的子视图也一并删除.

创建于屏幕等大的内容页,颜色设置成了亮灰

接下来创建两个简单的输入框同时需要对两个输入框进行代理设置,设置成所在类为该输入框的代理,并把这两个输入框添加到conView这个视图上.

创建两个输入框,并设置代理

然后需要输入框遵守UITextFieldDelegate协议,那么问题来了,我们现在要实现的是点击空白区域回收键盘,我们只有选中某个输入框的时候,键盘才会出现,那么我们点击空白区域来触发某个方法,这个方法中写了让键盘退出的语句,这样就能是键盘退出了.当点击空白区域会触发- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event;方法.这时候我们就需要对选中的输入框后跳出来的键盘回收,我们如何知道,我们现在选中了那个输入框呢?这就需要我们定义一个属性,用来存放我们当前点击的输入框对象.

定义一个输入框属性,在整个.m文件中都可以调用

接下来,我们应该用UITextFieldDelegate协议中的一个方法,来获取当前点击的输入框对象

获取当前输入框对象,保存在定义的属性输入框中

我们拿到当前正在操作的输入框对象后,那么你点击空白区域要触发方法,触发后,在方法中对当前键盘进行回收.

直接回收当前属性定义的输入框中对象的键盘

效果图如下:

效果图
上一篇下一篇

猜你喜欢

热点阅读