您的位置:首页 > 其它

StoryBoard初探(一):实现简单的页面跳转与返回

2014-12-23 20:29 597 查看

前言

苹果推出故事版很久了,一直没有深入学习过。最近打算尝试用StoryBoard做高保真交互App原型,决定学习下。相对于IB来讲,StoryBoard几乎不用手写代码,便能实现页面交互,这一点很适合会Xcode的同学用来做快速原型开发。

实现简单的页面跳转

新建工程,选择Single View Application,Xcode生成的工程模板中会自动使用StoryBoard.打开Main.storyboard文件,可以像IB一样,拖拽视图对象到ViewController的View上。如图,简单的加一个页面标示UILabel标签和一个UIButton按钮:



向主窗口中拖拽一个UIViewController对象,作为第二个页面,按住Ctrl键,拖拽按钮连线新添加的页面



松开鼠标在弹出的黑色悬浮框列表中选择Action Segue的类型为:Modal,这样在点击橙色按钮之后,页面2将从页面1底部弹出



页面2返回页面1,在页面2上添加一个按钮,在ViewController.m文件中实现一个带UIStoryBoardSegue类型参数的IBAction方法

- (IBAction)unwindSegue:(UIStoryboardSegue *)sender{
NSLog(@"unwindSegue %@", sender);
}


Ctrl连线页面2上的按钮到ViewController的Exit,并关联unwindSegue:方法





模拟器中的运行效果:



代码实现

页面1跳转页面2:先清除按钮连线,然后Ctrl连线ViewController到ViewController2,选择Modal类型



选中ViewController与ViewController2之间的连接,并设置连接的Identifier为:2vc2



在ViewController.m中添加代码,并关联按钮
- (IBAction)presentVC2:(id)sender {
NSLog(@"代码实现页面跳转");
[self performSegueWithIdentifier:@"2vc2" sender:sender];
}

页面2返回页面1,先清除按钮连线,然后在ViewController2.m中添加IBAction方法并关联返回按钮:
- (IBAction)backAction:(id)sender {
[self dismissViewControllerAnimated:YES completion:nil];
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: