事件的响应和对象的引用——outlet和action
来源:互联网 发布:漫画描线软件 编辑:程序博客网 时间:2024/05/22 00:05
什么是outlet:
outlet实际上时对控件对象的引用。
不像Android开发,你拖一控件到可视化设计器上,IDE自然会帮你在layout文件上添加一个该控件的标签。
然后你就可以操作该对象。
xcode不会这么做,当你拖一个控件(如Label)到storyboard上,你只能看见它,不能对它进行操作。
这个时候的Label对象就像一个无人认领的孤儿,你想对它进行操作,就必须向outlet求助。
如前所述,我想操作label对象,我就需要定义一个label的outlet变量。
声明一个outlet对象需要使用关键字IBOutlet
#import <UIKit/UIKit.h>@interface ViewController : UIViewController{ IBOutlet UILabel *lable;}@property (nonatomic) UILabel *lable;@end
声明完后我们还需要在实现文件中合成变量。(什么是合成?)不懂的先看看objective-c的教程
这些步骤都完成后,最重要的一步就是将定义好的outlet变量链接到storyboard上的label对象。
如图:
链接好后就可以对它进行操作了:
当我点击click to change the text按钮,就可以改变该label控件的值了。
什么是Action:
上面我说当我点击click to change the text按钮,就可以改变该label控件的值,那么这又是如何做到的呢?
这就是action要完成的工作————响应用户行为(如点击动作等)。
action实际上是一个方法(也可以说是一个函数),基本上工作原理和Android的setOnClickListener差不多,
就是监听用户行为,对这些行为作出响应。
当然,这个行为由谁触发,这个必须由你自己指出(如何指出?这只是简单的连接过程)
链接Action到按钮
当然,运行程序之前,你必须实现好这个方法(返回值必须是IBAction)
#import "ViewController.h"@interface ViewController ()@end@implementation ViewController@synthesize lable;- (void)viewDidLoad{ [super viewDidLoad];// Do any additional setup after loading the view, typically from a nib.}- (void)didReceiveMemoryWarning{ [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated.}-(IBAction)clickChangeLabel:(id)sender{ [lable setText:@"Hello iPhone"];}@end
0 0
- 事件的响应和对象的引用——outlet和action
- 事件的响应和对象的引用——outlet和action
- Outlet和Action
- 对象和对象的引用
- struts2的Action类中获得请求和响应对象的四种方法
- 在网页中引用DWG控件,交互绘图,和响应鼠标点击对象的方法
- 在网页中引用DWG控件,交互绘图,和响应鼠标点击对象的方法
- 对象的强引用和弱引用
- 对象的强引用和弱引用
- Java的对象引用和值引用
- 对象引用和值引用的区别
- 对象的赋值和引用
- 对象和引用的概念
- 对象的引用和创建
- list的显示和响应事件
- ios 事件传递和响应的总结
- iOS事件的传递和响应
- Java JList的使用和事件响应
- Android权限大全
- C#语言基础原理及优缺点
- Python 刷网页访问量
- 学习ART运行时无缝对接Dalvik虚拟机
- hihocoder - 最近公共祖先系列 15、16、17周
- 事件的响应和对象的引用——outlet和action
- 环境变量
- redis基础之数据类型--列表类型
- i os sqlite
- 让他很让他很虽然他还人太好
- error与exception
- 第十一周项目一 输出星号图 空心三角
- php 5.3.5 +nginx 1.6.2 配置
- Android HTTP