苹果ios界面间跳转方法总结

下面以FirstViewController(FVC)的按钮button点击后跳转到SecondViewController(SVC)为例说明:

方式一:Storyboard的segues方式

鼠标点击按钮button然后按住control键拖拽到SVC页面,在弹出的segue页面中选择跳转模式即可

INVFNn

优点:操作方便,无代码生成,在storyboard中展示逻辑清晰
缺点:页面较多时不方便查看,团队合作时可维护性差, 多人合作时不建议使用这种方式。

方式二:选项卡UITabBarController控制器

通过调用UITabBarController的addChildViewController方法添加子控制器,代码实例如下:

UITabBarController *tabbarVC = [[ UITabBarController alloc ] init ];
FirstViewController *FVC = [[FirstViewController ] init ];
FVC.tabBarItem.title = @"控制器1" ;
FVC.tabBarItem.image = [ UIImage imageNamed : @"first.png" ];
SecondViewController *SVC = [[SecondViewController ] init ];
SVC.tabBarItem.title = @"控制器2" ;
SVC. tabBarItem.image = [UIImage imageNamed : @"new.png" ];
// 添加子控制器(这些子控制器会自动添加到UITabBarController的 viewControllers 数组中)
[tabbarVC addChildViewController :FVC];
[tabbarVC addChildViewController :SVC];

优点:代码量较少

缺点:tabbar的ios原生样式不太好看,(不常用,目前不建议使用),如果要使用,建议自定义tabbar

方式三:导航控制器UINavigationController

在FVC的button的监听方法中调用:

[self.navigationController pushViewController:newC animated:YES]; //跳转到下一页面

在SVC的方法中调用:

[self.navigationController popViewControllerAnimated:YES]; //返回上一页面

当有多次跳转发生并希望返回根控制器时,调用:

[ self .navigationController popToRootViewControllerAnimated: YES ];  //返回根控制器,即最开始的页面

方式四:利用 Modal 形式展示控制器

在FVC中调用:

[ self presentViewController:SVC animated: YES completion:nil];

在SVC中调用:

[ self dismissViewControllerAnimated: YES completion: nil ];

方式五:直接更改 UIWindow 的 rootViewController

总结:

Storyboard方式适合个人开发小程序时使用,有团队合作或者项目较大时不建议使用
UITabBarController因为目前系统的原生样式不太美观,不建议使用
推荐使用UINavigationController和Modal,无明显缺点,而且目前大部分程序都使用这两种方式,只是看是否需要导航控制器而确定使用哪种方案

时间: 2024-09-30 15:14:20

苹果ios界面间跳转方法总结的相关文章

iOS应用内跳转系统设置相关界面的方法

iOS应用内跳转系统设置相关界面的方法         在iOS开发中,有时会有跳转系统设置界面的需求,例如提示用户打开蓝牙或者WIFI,提醒用户打开推送或者位置权限等.在iOS6之后,第三方应用需要跳转系统设置界面,需要在URL type中添加一个prefs值,如下图:         跳转系统设置根目录中的项目使用如下的方法: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18          _array = @[                

iOS提问:两个应用间跳转,怎么写跳回之前的应用的方法

问题描述 iOS提问:两个应用间跳转,怎么写跳回之前的应用的方法 各路大神,请教下,当购物APP调用支付宝或微信支付时,不管支付成功与失败,都可以回到购物APP跳转之前的页面,微信和支付宝是怎么处理回到购物APP的,这个跳回购物APP时,购物APP也没有出现启动页,感觉是直接切换的应用,我自己用OpenURL练习时,应用A跳应用B,(不管B启动没启动B都会出现启动页,为什么B在后台的时候还是会出现启动页呢),我要在应用B上加一个button来返回应用A,用的方法还是OpenURL,(这样跳回应用

IOS应用内跳转系统设置相关界面的方法_IOS

在iOS开发中,有时会有跳转系统设置界面的需求,例如提示用户打开蓝牙或者WIFI,提醒用户打开推送或者位置权限等.在iOS6之后,第三方应用需要跳转系统设置界面,需要在URL type中添加一个prefs值,如下图: 跳转系统设置根目录中的项目使用如下的方法: _array = @[ @{@"系统设置":@"prefs:root=INTERNET_TETHERING"}, @{@"WIFI设置":@"prefs:root=WIFI&qu

android 界面间的跳转用什么实现,跳转时activity的生命周期

问题描述 界面间的跳转用什么实现,跳转时activity的生命周期 解决方案 Activity的生命周期看清楚了你应该就不会有这个跳转时生命周期的问题了.里面描述得很清楚.跳转方法很多,看下面这个:http://www.iteye.com/problems/63220里面我的回答很明确了.解决方案二:一般用Intent打开其它的Activity

iOS通过block在两个页面间传值的方法_IOS

一.功能需求 在第一个页面中有一个button和一个label,label上默认显示"哈哈",点击button进入第二个页面.在第二个页面有一个UITextField和一个button2,点击button2回到第一个页面,但同时第一个页面的label上显示的文字修改为刚刚在UITextField写进去的文字. 二.先定义block 在要传值得那个页面定义含有block参数的方法,即在第二个页面的.h文件中定义: 重新定义:typedef void (^ReturnTextBlock)(

几秒钟时间绕过苹果iOS 7 beta版锁屏界面

摘要: 苹果那华丽的新手机操作系统放出才48小时,就有人找到了可以突破安全保护的漏洞. 周三,住在西班牙特内里费岛的36岁iPhone用户何塞罗德里格斯(Jose Rodriguez)给我发来视频,展示了如 苹果那华丽的新手机操作系统放出才48小时,就有人找到了可以突破安全保护的漏洞. 周三,住在西班牙特内里费岛的36岁iPhone用户何塞·罗德里格斯(Jose Rodriguez)给我发来视频,展示了如何只用几秒钟时间绕过苹果iOS 7 beta版锁屏界面.先进入iOS控制台打开计算器应用,然

uiview-自学ios,关于多个界面互相跳转的问题

问题描述 自学ios,关于多个界面互相跳转的问题 我自学的ios,看的是精通ios(第七版),里面关于界面跳转的那一章节我已经看完了. 于是我自己写了一个多界面跳转的小程序.在一个uiview界面里我安放了一个toolbar, 上面有四个item.分别跳转到四个不同的界面.但是我有一个问题,就是跳转有点奇怪. 点击了第二个item,没反应,需要点击其他的item再点击第一次点击的才会跳转.但是 跳转也有问题.两个界面重合了.跳转的界面被遮盖在第一个界面下面.为什么会这样子? 这一个是我一个跳转函

怎么开启苹果iOS 9.3系统Night Shift模式方法

iOS 9.3中新增的色温自动调节(Night Shift)功能在哪里设置呢?   1.升级完iOS9.3系统后,打开[设置]→[显示与亮度]选项打开点击进入了,效果如下图所示.     2.在[显示与亮度]→[Night Shift]在此我们就可以打开进入了,具体的操作如下所示.   好了以上就是小编为各位整理的一篇关于怎么开启苹果iOS 9.3系统Night Shift模式的全部操作方法了,希望此教程可以为大家带来帮助的哦.

苹果iOS人机界面指南

苹果iOS人机界面指南用户界面原则 好的人机界面规范遵从于用户思考和行动的方式,而不屈从于设备的性能.一个缺乏吸引力,复杂的,或违悖逻辑的用户界面,却会让原本优秀的应用变得索然无味.反过来, 一个漂亮的,直觉感知的,引人入胜的界面能强化应用程序的功能,并且能在用户心中激发出正面的情绪. 整体之美 整体之美,并不是简单地指应用界面有多漂亮,而是指应用的外观和功能是否完美地结合.例如,用来处理实际工作的应用通常会简化装饰性的UI元素,并置于背景中,而将重要的地位让给任务本身,因而会仅提供标准的控件和