IOS-MVC范型和处理基本交互

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];  //注意必须释放内存,防止内存泄漏

}

你可能感兴趣的:(IOS-MVC范型和处理基本交互)