事件处理

程序获取控件的两种方式

通过IBOutlet连接来获取控件

打开辅助编辑器(show the assistant editor),保证编辑区的左边显示界面设计文件,右边显示该界面设计文件对应控制器的接口部分,单击控件不放,并按住 Control 键,将控件拖至 @interface 和 @end 之间的空白处,填写好弹出窗口即可。

可通过连接检查器面板(Show the connections inspector)查看UI控件与IBOutlet属性之间的关联关系

通过Tag属性来获取控件

//借助viewWithTag: 方法即可通过UI控件的Tag属性获取该控件
UILabel* myLb = (UILabel*)[self.view viewWithTag:12];
//设置myLb的文本内容
[myLb setText:@"孙悟空"];

事件的处理方式

通过IBAction绑定实现时间处理

以连接IBOutlet相同的方式,连接IBAction与UI控件,之后在对应的控制器实现部分重写对应的IBAction方法

通过代码设置时间处理方法

IOS中能与用户互交的控件大多继承了UIControl基类,该类日提供了如下方法来注册:

  1. -addTarget:action:forControlEvents: 为当前UIControl控件的指定事件注册时间的处理方法
  2. -removeTarget:action:forControlEvents: 删除为当前UIControl控件指定事件所注册的时间处理方法
    • addTarget: 该参数指定任意对象,表明以该对象的方法作为事件处理方法
    • action: 该参数接受一个SEL参数,代表一个IBAction方法,表明将以该IBAction方法作为事件处理方法
    • forControlEvents: 该参数接受一个UIControlEvents类型的枚举值,该枚举值用于指定时间类型,表明为此中类型的时间绑定事件处理方法。该参数可以接受的枚举值与connections inspector中的sent events存在一一对应关系
//为loginBn控件的UIControlEventTouchUpInside事件绑定事件处理方法
//以当前对象的loginHandler:方法作为时间处理方法
[self.loginBn addTarget:self action:@seletor(loginHandler:) forControlEvents:UIControlEventTouchUpInside];

通过委托对象来处理事件

类似于UITable控件这种拥有一些自身的特殊时间,不能用前两种途径实现,则可使用委托对象来处理,详细后解。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值