1.MVC(模型-视图-控制器).Cocoa Touch设计者采用MVC范型作为指导原则,用于拆分GUI(图形化界面)应用程序代码的逻辑方法
2.Moudle模型:保存和处理应用程序数据的类(通常是设计一些ObjC类)
View视图:窗口、控件等和用户交互的元素组成的部分
Controller控制器:将模型和视图绑定在一起,确定如何处理用户输入的应用程序逻辑(通常由开发人员创建的类和特定于应用程序的类组成)
3.outlet输出口:控制器中可以定义特殊变量来饮用nib中的变量,将此变量声明为输出口。
例如:定义一个nib已有Button的输出口:
UIButton * button;
声明属性:
@property(nonatomic,assign)IBOutlet UIButton* button
IBOutlet 也可以写在定义处:IBOutlet UIButton * button;则声明属性时就可以不写了
4.操作:IBAction声明的,由控件触发
操作的声明: -(IBAction)doSomething:(id)sender;
返回值必须是IBAction,与void相同。
参数可以随意:通常参数为id类型的sender 表示触发该操作的控件自身,可以在操作内部引用
5.动态生成按钮并绑定事件 示例:写在ViewController.m文件中
double x = 10; double y = 20;
double width = 100; double height = 30;
UIButton *btn = [UIButtonbuttonWithType:UIButtonTypeRoundedRect];
btn.frame = CGRectMack(x,y,width,height);
[self.view addSubview:btn] ; //self为controller;self .view为程序底层基本视图
//为按钮绑定点击事件
[btn addTarget:selfaction:@selector(ClickMe:)forControlEvents:UIControlEventTouchUpInSide];//ClickMe:为用户自定义点击按钮响应消息事件
//定义ClickMe点击事件:这里只做一个弹出窗口的效果
-(IBAction)ClickMe:(id)sender
{
UIAlertView*alert = [[UIAlertView alloc]initWithTitle:@”Hello” message:@”您点击了我!” delegate:nilcancleButtonTitle:@”OK” otherButtonTitles:@”Cancle”,nil];
[alertshow];
[alertrelease]; //注意必须释放内存,防止内存泄漏
}