深入浅析IOS中UIControl

2016-02-19 10:58 5 1 收藏

下面这个深入浅析IOS中UIControl教程由图老师小编精心推荐选出,过程简单易学超容易上手,喜欢就要赶紧get起来哦!

【 tulaoshi.com - 编程语言 】

UIEvent是一系列UITouch的集合,在IOS中负责响应触摸事件。另外还提到了响应者链的概念,在IOS中,所有事件有一个最先响应者,事件可以沿着响应者链向下传递。

接下来是UIControl对象

UIControl是UIView的子类,当然也是UIResponder的子类。UIControl是诸如UIButton、UISwitch、UITextField等控件的父类,它本身也包含了一些属性和方法,但是不能直接使用UIControl类,它只是定义了子类都需要使用的方法。

UIControl对象采用了一种新的事件处理机制,将前一节直接处理的触摸事件转换成简单操作,这样可以无需关心用户访问控件的具体方式。触摸事件到达UIControl对象(由响应者链派遣)后,在UIResponder的方法中(如touchBegan:withEvent)中,UIControl将标准的触摸事件转换为特殊的控件事件,简单的理解就是,UIControl把复杂的触摸事件封装成了简单的易于使用的控件事件。例如通过UIControl对象处理后,按下按钮的事件就被封装成一个控件事件,而不用去判断触摸屏幕的整个操作过程。

例如按钮的单击事件:UIControlEventTouchUpInside

我们所需要知道的是UIControl首先将触摸事件转换为控件事件,再转换为带接收放的操作。我们只要编写第二次转换的代码,就是将控件事件转换为有目标的操作。

使用addTarget:action:forControlEvents

这是UIControl的一个方法,为指定的控件对象添加事件,例如:

[controlObj addTarget:recepientObj action @selector(method) froControlEvents : UIControlEvents];

controlObj是要响应事件的控件对象;

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

参数receientObj是要把消息发送到哪里,一般是self,通常指实例化控件对象的控制器;

action后面是一个选择器,表示该事件需要响应的方法,事件做什么其实就写在这个方法里面;

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

最后一个是事件类型,表示响应什么样的事件。

使用的两种方式:

1.通过代码

在代码中新建一个按钮,然后为按钮对象添加addTarget:action:forControlEvents方法,然后编写响应方法即可。

2.通过可视化实现

在IB中按住control键,点击鼠标从按钮拖动到对应的.h文件中,就建立了一个IBAction方法,在此方法中编写事件逻辑便可完成事件响应,用这种方法相比第一种来说更直观,开发效率也更高。

后续还会使用IOS中其他控件,但大致原理都是一样的,后面会结合新的知识来使用这些控件,包括对控件的自定义样式等。

来源:http://www.tulaoshi.com/n/20160219/1596239.html

延伸阅读
标签: windows 操作系统
一个周末的早晨,业余编程爱好者小张打开计算机,当正在他冲咖啡的时候,计算机自动连接上网络,开始下载前一天没下载完的电影。而所用的这个名为X-eMule的软件,正是小张利用WinFX中的Indigo平台编写的P2P软件…… 如果说Windows Presentation Foundation(Avalon)是在外观之炫上做足了文章的话,那么Indigo则是在网络性能上下足了功夫,给程...
标签: Web开发
概述 函数是进行模块化程序设计的基础,编写复杂的Ajax应用程序,必须对函数有更深入的了解。JavaScript中的函数不同于其他的语言,每个函数都是作为一个对象被维护和运行的。通过函数对象的性质,可以很方便的将一个函数赋值给一个变量或者将函数作为参数传递。在继续讲述之前,先看一下函数的使用语法: function func1(…){…} var...
print()方法在输出括号里指定的字符串后就结束操作,而不再添加回车,光标停留在字符串最后一个字符的右边,println()则是添加回车,光标停在下一行。 for(i=1;i6;i++) println(i); 结果: 1 2 3 4 5 for(i=1;i6;i++)   print(i); 结果:12345 "ln"就是“line”去掉元音字母的简写
标签: windows 操作系统
电脑关机是一件简单的事情,是我们学习电脑的最基本的一课,虽说简单,但我们若用好了,那关机就变得更惬意了,特别是现在的Win2000,关机有了更多选择。倘若学会其中技巧,别人会把你看成电脑高手,最起码也能在初学者面前炫耀一番吧。 在Win2000里可以一键关机,可以快速休眠。如果你启动Win2000要用一分多钟,而且总是埋怨启动太...
标签: windows 操作系统
  在Windows中,鼠标的使用大大方便了操作,但你是不是有累坏食指的感觉呢?Windows XP提供了一个“单击锁定”功能,可以解放你的食指。 启用单击锁定 1、单击“开始”菜单中的“控制面板”,然后双击“鼠标”,系统弹出“鼠标属性”对话框; 2、单击“鼠标键”选项卡,然后在“单击锁定”标题下,选中“启用单击锁定...

经验教程

564

收藏

94
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部