iOS开发——界面跳转与返回及视图类型详解

这篇博客详述了iOS开发中的界面跳转和返回,包括在有无导航栏情况下使用modal、push等方式的跳转。文章还探讨了不同视图类型的使用,如modal和push,并提供了代码示例。此外,还介绍了界面返回的方法,如dismiss、pop以及导航栏返回,并讲解了界面样式调整。最后,博主分享了GitHub上的代码资源供读者参考。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

       iOS开发中界面跳转是必不可少的一个功能,一个完整的App必然是由多个界面组成的。我在这篇博客中将会较为全面的讲解在是否有导航的情况下进行跳转以及返回,并且对modal、push、custom等视图做一个介绍。代码我已经上传至:https://github.com/chenyufeng1991/NavigationTest   。 之前我也写过一篇关于导航栏的博客《iOS纯代码实现界面建立、跳转、导航栏、(无storyboard,无nib)》。大家也可以进行参考。

       个人建议,如果你的项目已经确定要使用storyboard的情况下,可以自动在storyboard中生成导航栏,并且界面的跳转都可以通过pushViewController这种方式来实现。这样可以大大提高效率和减少代码量,也是目前苹果提倡的方式。

       但是如果是在团队项目开发中,可能有人会有顾忌,就是怕大家一起操作storyboard,会导致各种冲突,所以退而求其次,选用了xib来构建界面。这也是没有问题的,我今天将会来实现使用代码导航栏和不同的视图的跳转。

    下面我列出界面跳转中最常用14个情况,并给出了该方法是否可行。

 1storyboard生成ViewController并添加按钮+代码生成navigationController+使用pushpushViewController跳转到另一个storyboard生成的ViewController-->该按钮无法点击,无法进行跳转;

 (2)storyboard生成ViewController并添加按钮+代码生成navigationController+使用presentViewController跳转到另一个storyboard生成的ViewController-->该按钮无法点击,无法进行跳转;

 (3)storyboard生成ViewController并添加按钮+storyboardAction Segue使用push跳转到另一个storyboard生成的ViewController-->报错,无法跳转,提示:“Push segues can only be used when the source controller is managed by an instance of UINavigationController.”

 4storyboard生成ViewController并添加按钮+storyboardAction Segue使用modal跳转到另一个storyboard生成的ViewController-->正常,可以进行跳转;

 5storyboard生成ViewController并添加按钮+storyboard中在第一个ViewController中生成导航栏+storyboardAction Segue使用push跳转到另一个storyboard生成的ViewController-->正常,可以进行跳转,并可以使用导航栏自带的返回按钮返回上一个页面;

 6storyboard生成ViewController并添加按钮+storyboard中在第一个ViewController中生成导航栏

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值