navigationController 之间的切换

本文介绍如何在iOS应用中实现类似微信的功能,即在不同NavigationController间平滑切换,提供具体代码实现方法和步骤。

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

项目要实现从一个Navigation 下push出的第N层controller后 立即切换到另一个 Navigation下

例如:在微信的通讯录Nav中选择一个好友,进入好友的详细资料,点击发消息按钮后,进入聊天界面,这时你会发现点击左上返回按钮后pop到的时微信Nav,(另一个NavigationController)。

QQ也有这样的功能,但是没有微信做的好,仔细看就会发现 QQ 是通过 先pop到rootViewController后(不带动画的)然后tabbarController 切换Nav。在动画之前你会发现界面变化后push

 

我找到一种类似微信那种切换方法,大家可以看一下,有错误大家指正一下。

实现方法:先获取一个Nav的rootcontroller 即controllrt

然后:

        [self.navigationController setViewControllers:@[[self.navigationController.viewControllers firstObject]]];
        [controllrt.navigationController setViewControllers:@[controllrt,self]];
        [controllrt.tabBarController setSelectedViewController:controllrt.navigationController];

 

转载于:https://www.cnblogs.com/levy/p/4679790.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值