iOS 随意push,pop到任意控制器
2016-09-09 16:01
267 查看
主题思想:如A、B、C、D 四个视图控制器
想要在 A push B 后, B 在push 到 D ,然后从 D pop 到 C ,在从 C pop 的A解决方法如下:
1.假如此时在 A 控制器下,想要到 push 到 B, 可以这样写self.navigationController.viewControllers中按顺序含有 [A,B]2.此时已经到 B 控制器下了, 接下来是 push 到 D, 可以这样写
self.navigationController.viewControllers中按顺序含有 [A,B,D]接下来很重要,很重要,很重要:如何想从 D pop 到 C, 看数组[A,B,D] 中压根就没有C 该如何pop 到C呢?这时就需要对这个数组进行修改,将C 加入进去于是 你会如下写:
self.navigationController.viewControllers是不可变数组,没办法了,我们只好转换一下了:
tempMarr是这样的 [A,B,C,D], 可是 要想 从 C pop 到 A ,数组中就不能有 B就需要 将
tempMarr变成 [A,C,D] ,至于怎么变,你比我懂得多,懂得思考的同学会发现 这时的
self.navigationController.viewControllers依然是 [A,B,D], 不用急,不用怕
navigationController有这样一个方法, 可以搞定,如下:
附加代码:
在B 控制器中处理:相关文章推荐
- iOS 导航控制器如何随意push和pop 想要在 A push B 后, B 在push 到 D ,然后从 D pop 到 C ,在从 C pop 的A
- iOS开发-21UINavigationController导航控制器初始化 导航控制器栈的push和pop跳转理解
- iOS 如何随意的穿插跳跃,push来pop去
- iOS 如何随意的穿插跳跃,push来pop去
- iOS如何随意的穿插跳跃,push来pop去
- ios导航控制器UINavigationController,控制器a跳转(push)到b后,b跳转(push)到c,但c后退(pop)进入a
- 【iOS开发-21】UINavigationController导航控制器初始化,导航控制器栈的push和pop跳转理解
- iOS中用在导航控制器的转场动画(pop,push动画)制作
- iOS 如何随意的穿插跳跃,push来pop去
- iOS控制器在push或者pop时导航栏出现黑块的解决办法
- iOS中push与pop的随意切换
- IOS开发—IOS自定义任意位置右滑POP视图控制器
- iOS开发-21UINavigationController导航控制器初始化 导航控制器栈的push和pop跳转理解
- 【iOS开发-21】UINavigationController导航控制器初始化,导航控制器栈的push和pop跳转理解
- iOS实现先无动画pop再push,替换当前控制器
- iOS开发-21UINavigationController导航控制器初始化 导航控制器栈的push和pop跳转理解
- iOS如何随意的穿插跳跃,push来pop去
- iOS开发UINavigationController导航控制器初始化,导航控制器栈的push和pop跳转理解
- push,pop到任意控制器
- iOS控制器在push或者pop时导航栏出现黑块的解决办法