动作(IBAction)与输出口(IBOutlet)

来源:互联网 发布:做淘宝代销怎么抽成 编辑:程序博客网 时间:2024/05/24 03:13

~~~~我的生活,我的点点滴滴!!



很多时候我们不知道在什么情况下定义动作、又在什么情况下定义输出口,而这两个在Objective-C中使用的太频繁了,下面我们简单的一语道破玄机。




输出口



输出口就是我们需要在代码里操作的控件。在nib文件中,通过可视化操作来定义一个控件,如果这个控件需要在代码中被修改,那么就要定义一个输出口

指向这个控件,然后通过输出口来修改这个控件,输出口也就是一个指针指向了nib中得控件对象。输出口使用关键字IBOutlet声明,类似于下面一行代码

定义一个标签输出口:



@property(nonatomic,retain)IBOutlet UILabel *myLabel;


我们希望定义一个标签,在代码里需要更改这个标签的内容,这样就要像上面那样通过关键字IBOutlet声明为输出口,然后在Interface Bulider中把这个

输出口和相应的标签关联,就可以在代码里通过这个输出口操作标签了。





动作 



操作就是触发一个控件后这个控件执行的方法。我们要添加一个按钮,当你想在点击这个按钮的时候改变屏幕的颜色,这时就需要定义一个操作改变屏幕颜

色,然后在nib文件中把操作跟这个按钮关联起来,当你点击这个按钮的时候就会调用关联的操作方法了。通常情况下操作方法的声明如下:



-(IBAction)dosomething:(id)sender;


关键字IBAction告诉Interface Builder 此方法是一个操作方法,可以被某个控件触发。方法名doSomething可以为任意的你自己定义。返回值必须是IBAciton,

其实它类似于void返回值不返回值。操作方法接收一个参数(id)sender,控件触发了操作后就把自己传给sender,这样在操作方法里就可以根据sender得到触

发控件的信息。







也就是总结出一句话,如果你想在代码中修改此内容,定义一个输出口,如果你只要响应某个操作,就定义一个动作。

0 0
原创粉丝点击