黑马程序员--OC之UIKit类的继承结构图

------ Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------

先贴一个UIKit类的结构图,明确一下继承关系


注意一下,UIResponder这个类,它是UIApplication和UIView的超类,UIResponder类定义了对象相应和控制事件的接口,它的实例通常被称为应答对象。
    这个类中主要的触摸方法法是:touchesBegan:withEvent:, touchesMoved:withEvent:, touchesEnded:withEvent: , 和 touchesCancelled:withEvent:
    其实例方法包括:
    becomeFirstResponder :通告接受者对象称为当前的第一响应者对象(- (BOOL)becomeFirstResponder )
主要的时间控制方法:
touchesBegan:withEvent:通知调用者当有一根或者多根手指触摸到了视图或者窗口
- (void)touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event: 通知接收者当系统发出取消事件的时候(比如低内存消耗的警告框)
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event :当一个触摸事件结束时发出的UITouch实例对象
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event :告诉接收者一个或者多个手指在视图或者窗口上触发移动事件。默认不允许多点触摸。

如果要接收多点触摸事件你必须发setMultipleTouchEnabled: 这个消息给接收的视图实例对象并传递YES参数。


继承自UIControl类的子类都可以通过addTarget添加事件,如果不是继承自它的控件也要与用户交互怎么办,可以设置它的userInteractionEnabled属性为yes

给这个控件添加tap或其他手势与用户交互,所有继承自UIResponder这个类的控件都可以添加


另外注意一下UIBarButtonItem和UITapBarItem,不要把这两个控件搞混,UIBarButtonItem是导航栏上的按钮,UITapBarItem是底部工具栏的按钮


UIControl的常用事件:


1.UIControlEventTouchDown
单点触摸按下事件:用户点触屏幕,或者又有新手指落下的时候。
2.UIControlEventTouchDownRepeat
多点触摸按下事件,点触计数大于1:用户按下第二、三、或第四根手指的时候。
3.UIControlEventTouchDragInside
当一次触摸在控件窗口内拖动时。
4.UIControlEventTouchDragOutside
当一次触摸在控件窗口之外拖动时。
5.UIControlEventTouchDragEnter
当一次触摸从控件窗口之外拖动到内部时。
6.UIControlEventTouchDragExit
当一次触摸从控件窗口内部拖动到外部时。
7.UIControlEventTouchUpInside
所有在控件之内触摸抬起事件。
8.UIControlEventTouchUpOutside
所有在控件之外触摸抬起事件(点触必须开始与控件内部才会发送通知)。
9.UIControlEventTouchCancel
所有触摸取消事件,即一次触摸因为放上了太多手指而被取消,或者被上锁或者电话呼叫打断。
10.UIControlEventTouchChanged
当控件的值发生改变时,发送通知。用于滑块、分段控件、以及其他取值的控件。你可以配置滑块控件何时发送通知,在滑块被放下时发送,或者在被拖动时发送。
11.UIControlEventEditingDidBegin
当文本控件中开始编辑时发送通知。
12.UIControlEventEditingChanged
当文本控件中的文本被改变时发送通知。
13.UIControlEventEditingDidEnd
当文本控件中编辑结束时发送通知。
14.UIControlEventEditingDidOnExit
当文本控件内通过按下回车键(或等价行为)结束编辑时,发送通知。
15.UIControlEventAlltouchEvents
通知所有触摸事件。
16.UIControlEventAllEditingEvents
通知所有关于文本编辑的事件。
17.UIControlEventAllEvents
通知所有事件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值