0

我想将当前视图控制器切换到另一个,而不使用 UINavigationController 或 UITabbarController。做这个的最好方式是什么?

这就是我在 App Delegate 代码中所做的事情:

self.window.rootViewController = newViewController; //The one I am switching to
[self.window makeKeyAndVisible];

有没有更“优雅”的方式?

== 编辑 ==

我想我需要的是一个 SwitchViewController,它清除以前的视图控制器并用新的视图控制器替换它,更好地切换动画,如淡出/淡入。

我认为这是一个有效的问题。无论谁反对它,至少应该添加一些评论来解释。

4

2 回答 2

1

我认为没有更多选择,如果您不想将其呈现为模态视图控制器,或使用导航堆栈,或者在另一边使用容器视图控制器或标签栏,我唯一能做的想想它正在改变你所说的 window.rootViewController 。

你有没有想过在没有动画的情况下呈现视图控制器?还是使用隐藏的标签栏?您可以以编程方式选择选项卡。

你确定不使用它们吗?我的意思是,任何设计都可以使用这些方法,如果你是一个没有经验的开发人员,我建议你重新考虑你的方法。

于 2013-10-05T13:10:38.157 回答
0

您可以在不使用导航控制器的情况下使用 segue - 恕我直言,这比重新分配 rootViewController 更容易理解。我已经使用模态演示创建了 segues - 我不确定 Push 是否可以在没有导航控制器的情况下工作。我在早期的一些实验中这样做了,因为我对 ios 开发也很陌生,并且已经切换到使用导航控制器 - 它为您提供了更多的灵活性,更干净,而不是太多额外的开销......作为 Antonio建议,您可能需要重新考虑使用导航控制器。

于 2013-10-05T14:53:35.993 回答