热搜:NVER node 开发 php

StoryBoard初探(一):实现简单的页面跳转与返回_html/css_WEB-ITnose

2024-11-16 09:15:01
StoryBoard初探(一):实现简单的页面跳转与返回_html/css_WEB-ITnose

前言

苹果推出故事版很久了,一直没有深入学习过。最近打算尝试用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];}