欢迎来真孝善网,为您提供真孝善正能量书籍故事!

深入解析:POP与PUSH控制机制在系统管理中的应用

时间:11-16 现代故事 提交错误

大家好,今天小编来为大家解答以下的问题,关于深入解析:POP与PUSH控制机制在系统管理中的应用,这个很多人还不知道,现在让我们一起来看看吧!

解决方法如下:

1、如果你在控制器A下,想推送到B,可以这样写

[self.navigationController PushViewController: B :YES];

此时self.navigationController.viewControllers 依次包含[A, B]

2、此时已经下载到B控制器了。接下来就是push到D了,可以这样写

[self.navigationController PushViewController: D :YES];

此时self.navigationController.viewControllers依次包含[A,B,D]

接下来的事情非常重要,非常重要,非常重要:

如何从D跳到C?如果数组[A,B,D]中没有C,如何pop到C呢?

这时候就需要修改数组,将C添加进去。

所以你会写:

[self.navigationController.viewControllers addObject:C];

发现一个错误,这是因为self.navigationController.viewControllers是一个不可变数组,没有其他办法,我们必须转换它:

NSMutableArray*tempMarr=[NSMutableArrayarrayWithArray:self.navigationController.viewControllers];

这时候加上C就容易多了。嘿嘿,如果你聪明的话,你会发现从D中pop C不能直接addObject到C;

我当然会这样做:

[tempMarr insertObject:C atIndex:tempMarr.count- 2];

这时tempMarr就是这样的[A,B,C,D],但是如果要从C弹出到A,数组中不能有B。

您需要将tempMarr 更改为[A, C, D]。至于怎么改,你比我更清楚。

懂得思考的同学会发现,此时self.navigationController.viewControllers依然是[A,B,D]。别担心,别害怕。 NavigationController有这样一个方法,可以做到,如下:

[self.navigationController setViewControllers:tempMarranimated:YES];

有同学会说,这不就是把B换成C吗?

看起来是这样,但是跳转的时机、时机、时机三倍重要,还有视图的切换、切换、切换

此时还在B控制器中。这些处理过程都是在B中处理的,也必须在B执行push to D方法之后执行,也就是说

[self.navigationController PushViewController:D 动画:YES];

后续数组处理;

附加代码:

在控制器B中处理:

-(void)pushTest {

[self.navigationController PushViewController:D 动画:YES];

NSMutableArray*tempMarr=[NSMutableArrayarrayWithArray:self.navigationController.viewControllers];

[tempMarr insertObject:C atIndex:tempMarr.count- 2];

[tempMarrremoveObject:self]; //此时self指的是B,因为它在B中

用户评论

颓废i

终于找到一篇关于控制器pop和push的文章了!

    有9位网友表示赞同!

莫名的青春

一直在想了解如何利用pop和push实现栈的数据操作。

    有20位网友表示赞同!

琴断朱弦

学习编程感觉最难的就是各种数据结构,这篇文章能帮到我吗?

    有12位网友表示赞同!

命硬

我想知道控制器pop和push在实际应用场景中有什么作用。

    有9位网友表示赞同!

青袂婉约

看标题感觉内容很专业,希望解释清楚一点!

    有7位网友表示赞同!

雪花ミ飞舞

我之前学习过栈的概念,但怎么用控制器实现我不太懂。

    有13位网友表示赞同!

烟雨萌萌

期待这篇文章能给出一些具体的代码示例,更容易理解。

    有15位网友表示赞同!

涐们的幸福像流星丶

做软件开发的时候经常会用到数据结构,这篇正好可以补充我的知识。

    有8位网友表示赞同!

冷青裳

感觉标题很有吸引力,一定要看看里面的讲解!

    有13位网友表示赞同!

泪湿青衫

控制器pop和push听起来很复杂,文章能深入浅出地解释吗?

    有12位网友表示赞同!

清原

学习编程需要掌握很多概念,这篇文章能不能帮到我呢?

    有20位网友表示赞同!

拽年很骚

我一直对数据结构很有兴趣,这种操作机制很实用。

    有11位网友表示赞同!

安之若素

分享个话题吧,你们都在用哪些工具来学习控制器pop和push?

    有11位网友表示赞同!

如梦初醒

想了解一下这个控制器pop和push的应用领域,有哪些地方能遇到?

    有12位网友表示赞同!

颜洛殇

这篇文章的内容可能需要一定的编程基础才能完全理解。

    有9位网友表示赞同!

封心锁爱

对于初学者的来说,文章可以解释得更详细一些吗?

    有8位网友表示赞同!

放血

感觉标题很专业,但内容能让我轻松理解吗?希望不是太学术化。

    有12位网友表示赞同!

太易動情也是罪名

之前接触过栈的应用,希望能看到更多关于控制器pop和push的使用案例。

    有12位网友表示赞同!

【深入解析:POP与PUSH控制机制在系统管理中的应用】相关文章:

1.蛤蟆讨媳妇【哈尼族民间故事】

2.米颠拜石

3.王羲之临池学书

4.清代敢于创新的“浓墨宰相”——刘墉

5.“巧取豪夺”的由来--米芾逸事

6.荒唐洁癖 惜砚如身(米芾逸事)

7.拜石为兄--米芾逸事

8.郑板桥轶事十则

9.王献之被公主抢亲后的悲惨人生

10.史上真实张三丰:在棺材中竟神奇复活