iOS探索--页面控制和跳转

来源:互联网 发布:淘宝女装拍摄照相机 编辑:程序博客网 时间:2024/06/08 13:29

一、页面控制
在ios项目中关联UI和代码界面有俩种方法Main.storyboard和xib。当然有些人说代码内也可以定义UI,再此不细说。Main.storyboard重量级,适合管理多个ViewController。xib的比较轻量级。

storyboard和xib区别:一个工程中可以有多个xib文件,一个xib文件对应着一个视图控制器和多个视图。而使用storyboard时,一个工程只需要一个主storyboard文件就可以了。因此,在包含多个视图控制器的情况下,采用storyboard管理比较方便,而且storyboard还可以描述界面之间的导航关系。

1.ViewController关联xib的
新建一个类勾选Also create XIB file选项。
这里写图片描述
勾选Also create XIB file后,会自动创建一个和ViewController类配置好的xib的文件。
这里写图片描述
然后在拖控件关联到File’s Owner。
这里写图片描述
2.关联NetViewController.h,监听button,并找到这个控件
这里写图片描述
鼠标点击button按着conforl键有一条线拉到@interface方法里。
会弹出一条弹框如图。Connection是选择需要的方法类型。可以选择Action。会自动添加一条监听方法- (IBAction)myclea:(id)sender;。
NextViewController.h查看监听方法。
这里写图片描述
在监听方法中可以实现点击事件。
在弹出弹框时默认Outlet类型,在代码中可以通过self关键字找到这个控件。
这里写图片描述
拖拽label控件到NextViewController.h文件中
这里写图片描述
在NextViewController.m文件中使用
这里写图片描述
2.通过tag属性值找到这个控件
这里写图片描述
代码中:

UILabel* label =(UILabel*)[self.view viewWithTag:10];

3.页面跳转

如果使用导航
第一个页面按钮方法:
[self.navigationController pushViewController:secondVC animated:YES];
第二个页面按钮方法(返回):
[self.navigationController popViewControllerAnimated:YES];

如果使用模态
第一个页面按钮方法:
[self presentViewController:secondVC animated:YES completion:nil];
第二个页面按钮方法(返回):
[self dismissViewControllerAnimated:YES completion:nil];

页面跳转方法直接在监听的方法中使用就行,例如:

//跳转到下一个页面- (IBAction)myOk:(id)sender {    NextViewController* next = [[NextViewController alloc] init];    [self presentViewController:next animated:YES completion:nil];}//返回- (IBAction)twoButton:(id)sender {    [self dismissViewControllerAnimated:YES completion:nil];}

当然在实际开发中不需要这么麻烦。
直接可以在NextViewController.m中定义好Button的指针变量和IBAction方法。然后去xib文件中关联就好了。
1.定义变量

@interface NextViewController (){    __weak IBOutlet UIButton *loginButton;}

2.定义IBAction方法

- (IBAction)login:(id)sender{   //此处实现点击需要的方法}

3.关联xib
这里写图片描述
鼠标点击File’s Owner按着confrol键移动到LoginButton
这里写图片描述
主要关联:Received Action方法和Outlets方法里的loginButton。

至此,关联以及监听方法讲解完毕。

原创粉丝点击