UI视图交互与事件机制

1、UIButon控件详解ide

<>UIButtonUILabel的区别与联系spa

联系:都是UIView的直接或间接的子类,都具备UIView的属性和行为,UIView表明及其子类都表明一个矩形区域。orm

区别:继承

    一、UILabel是直接继承UIView,而UIButton是间接继承其父类UIControl是直接继承UIview事件

     2UIView有一个属性叫作userInteractionEnable(该属性决定是否可以接受并响应事件),UILabel为NO,UIcontrol及其全部的子类的userInteractionEnable属性的值默认为YES,UIControl及其子类响应事件每每是经过addTarget方法,天加点击事件图片

<二>UIButton的建立rem

一、经过默认样式建立get

二、经过自定义建立it

<三>属性io

配置按钮标题的属性和方法:


- titleLabel属性:按钮标题的标签

- titleForState:方法:指定状态下的按钮标题

- setTitle:forState:方法:设置指定状态下按钮的标题

- titleColorForState:方法:指定状态下的按钮标题颜色

- setTitleColor:forState:方法:设置指定状态下按钮标题的颜色

- setTitleShadowColor:forState:方法:设置指定状态下按钮标题阴影的颜色


配置按钮显示的方法:


- backgroundImageForState:方法:得到指定状态下的背景图

- setBackgroundImage:forState:方法:设置指定状态下的背景图

- imageForState:方法:得到指定状 态下的按钮图片

- setImage:forState:方法:设置指定状态下的按钮图片


配置边距的属性:


- contentEdgeInsets属性:内容的边距

- titleEdgeInsets属性:标题的边距

- imageEdgeInsets属性:图片的边距


获取按钮当前状态的属性:


- buttonType属性:可能的取值包括UIButtonTypeCustom、UIButtonTypeSystem、UIButtonTypeDetailDisclosure、UIButtonTypeInfoLight、UIButtonTypeInfoDark、UIButtonTypeContactAdd、UIButtonTypeRounedRect(过期)。

- currentTitle属性:按钮上当前显示的标题

- currentTitleColor属性:当前标题颜色

- currentImage属性:按钮上当前显示的图片

- currentBackgroundImage属性:按钮上当前显示的背景图片

- imageView属性:按钮上的图片视图


继承自UIControl的属性和方法:


- addTarget:action:forControlEvents:方法:将为事件添加的消息接受者和对应的动做加入事件派发表,简而言之就是为控件绑定事件处理的回调方法

- removeTarget:action:forControlEvents:方法:与上面方法的做用相反

- enabled属性:控件是启动仍是禁用

- state属性:控件所处的状态



###UIButton的经常使用事件和状态###


咱们先说一下UIControl的全部可能的事件。


事件类型|说明

:--|:--

UIControlEventTouchDown|单点触摸按下事件,用户点触屏幕,或者又有新手指落下的时候

UIControlEventTouchDownRepeat|多点触摸按下事件,点触计数大于1:用户按下第2、3、或第四根手指的时候

UIControlEventTouchDragInside|当一次触摸在控件窗口内拖动时

UIControlEventTouchDragOutside|当一次触摸在控件窗口以外拖动时

UIControlEventTouchDragEnter|当一次触摸从控件窗口以外拖动到内部时

UIControlEventTouchDragExit|当一次触摸从控件窗口内部拖动到外部时

UIControlEventTouchUpInside|全部在控件以内触摸抬起事件

UIControlEventTouchUpOutside|全部在控件以外触摸抬起事件(点触必须开始与控件内部才会发送通知)

UIControlEventTouchCancel|全部触摸取消事件,即一次触摸由于放上了太多手指而被取消,或者被上锁或者电话呼叫打断

UIControlEventTouchChanged|当控件的值发生改变时,发送通知。用于滑块、分段控件、以及其余取值的控件。你能够配置滑块控件什么时候发送通知,在滑块被放下时发送,或者在被拖动时发送

UIControlEventEditingDidBegin|当文本控件中开始编辑时发送通知

UIControlEventEditingChanged|当文本控件中的文本被改变时发送通知

UIControlEventEditingDidEnd|当文本控件中编辑结束时发送通知

UIControlEventEditingDidOnExit|当文本控件内经过按下回车键(或等价行为)结束编辑时,发送通知

UIControlEventAlltouchEvents|通知全部触摸事件

UIControlEventAllEditingEvents|通知全部关于文本编辑的事件

UIControlEventAllEvents|通知全部事件


对于UIButton来讲,可能绝大多数处理的都是UIControlEventTouchUpInside事件,简单的说就是按钮点击的事件。

相关文章
相关标签/搜索