我实现了一个带有10+视图的导航控制器。在此处,通过右图刷新的视图,切换到下一个视图...左图将带来上一页。在这里,我使用了PopToviewController进行Prevous页面。

在每个页面中,每个页面都有一个菜单要切换到所需的视图。跳到特定视图之后,如果我们扫过左将带来以前访问的视图,而不是这样,我只想按照菜单进行上一页...

在这里,我使用了PopToviewController的所有属性,但它可以使用任何建议。

thnks,

有帮助吗?

解决方案 3

最后,我解决了这个问题。但是不使用setViewController方法Infact。

在这里,在Pushig the视图本身时,我在堆栈中添加了视图。例如,我想转到视图a到d表示我添加了b and c和pushViewController动画:no;和动画:是的;

所以它对我很好。

其他提示

您必须将导航的视图控制器视为堆栈(例如桌子上的一堆纸)。

因此,如果将某些东西推到堆栈上,当您从堆栈中弹出某些东西时,它将是以前的项目。

我不确定您在做什么,但我会看 文档 对于UinavigationController的SetViewController:Animated方法。我认为这将有助于您的问题。

让我解释一下什么是nvaigationController堆栈。

stack = {root,a,b,c,d}。

当前的可见视图是D。当您使PushViewController(e)进行时,意味着您在堆栈中添加了一个新视图,该视图变得可见:stack = {root a,a,b,c,d,e}。当您制作popviewController时,您将删除堆栈的最后一个元素,并设置新的最后一个要可见的元素,在我们的情况下,它将变为:stack = {root a,a,b,c,d},d可见。现在,如果您选择poptorootcontroller(a),则意味着您从堆栈中删除所有元素,直到顶部元素为a,因此它变得可见,因此在我们的情况下,它是stack = {root,a}。

我希望我能正确理解您的问题并解释您,以便您可以正确理解层次结构。如果没有,请重新制定您的问题。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top