ios学习笔记之UIControl解读

来源:未知 责任编辑:责任编辑 发表时间:2015-10-08 14:15 点击:
UIControl,相信大家对其并不陌生吧,比如平常最常用的UIButton就是继承自UIControl的。按照惯例,还是先来看看为什么有UIControl这个类?什么时候用到它? p> 

p>查下文档就可以看到其是继承自UIView的,而对于其用途,官方对其有这么一段描述:

p> 

p>To observe or modify the dispatch of action messages to targets for particular events

p>To do this, override sendAction:to:forEvent:, evaluate the passed-in selector, target object, or UIControlEvents bit mask, and proceed as required.

p> 

p>To provide custom tracking behavior (for example, to change the highlight appearance)

p>To do this, override one or all of the following methods: beginTrackingWithTouch:withEvent:, continueTrackingWithTouch:withEvent:,endTrackingWithTouch:withEvent:.

p>简要点说,就是当你需要自定义一个类似于button的控件,也可自定义响应事件。而要这些,你必须实现相应的方法。详情可看下官方文档。

p> 

p>简要挑几个比较常用有代表性的属性和方法:

p> 

p> 

p> 

p>contentHorizontalAlignment:

p>这个属性主要是用于设置你自定义的这个空间里面的text or image在水平方向上的位置,而同样的另一个对应属性contentVerticalAlignment则用于设置垂直方向上的位置属性,取值可如下:

p> 

p>typedef enum {

p>   UIControlContentHorizontalAlignmentCenter = 0,

p>   UIControlContentHorizontalAlignmentLeft    = 1,

p>   UIControlContentHorizontalAlignmentRight = 2,

p>   UIControlContentHorizontalAlignmentFill   = 3,

p>} UIControlContentHorizontalAlignment;

p>typedef enum {

p>   UIControlContentVerticalAlignmentCenter  = 0,

p>   UIControlContentVerticalAlignmentTop     = 1,

p>   UIControlContentVerticalAlignmentBottom  = 2,

p>   UIControlContentVerticalAlignmentFill    = 3,

p>} UIControlContentVerticalAlignment;

p>state selected highlighted

p>这几个从字面上就能看出其作用,而对于其相应的state,ios对其有以下定义:

p>enum {

p>   UIControlStateNormal               = 0,

p>   UIControlStateHighlighted          = 1 << 0,

p>   UIControlStateDisabled             = 1 << 1,

p>   UIControlStateSelected             = 1 << 2,

p>   UIControlStateApplication          = 0x00FF0000,

p>   UIControlStateReserved             = 0xFF000000

p>};

p> 

p>看完了上面几个属性,再来看下一个最常用的方法:

p>- (void)addTarget:(id)target action:(SEL)action forControlEvents:(UIControlEvents)controlEvents

p> 

p>  target:目标,通常取值self

p>  action:一个sel值,用于定义一个方法,然后当你点击后面的controlEvents相应事件时开始执行。eg.@selector(myMethod:)

p>  controlEvents:事件,详情看上面的state定义。

p> 

p> 

p>不宜太长,就写这么多先,主要用到的就这么几个,但就是很常用,最近项目经常会写这类的自定义控件。
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名: 验证码:点击我更换图片
最新评论 更多>>

推荐热点

  • Lexical or Preprocessor Issue 'xxx.h
  • ios学习笔记(二)xcode 4.3.2下实现基本交互
  • ios学习笔记(一)xcode 4.3.2下创建第一个ios项目
  • UITableView一些方法
  • IOS类似iphone通讯录TableView的完整demo【附源码】
  • ios版本的helloworld
  • iPhone SDK开发:本地文本文件内容的读取
  • 如何为Iphone应用创建启动界面
  • 去掉屏幕键盘的方法
网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
Copyright © 2008-2015 计算机技术学习交流网. 版权所有

豫ICP备11007008号-1