3

我一直在阅读有关切换rootViewController窗口的几篇文章,有时有人说rootViewController在整个应用程序的生命周期中保持相同比切换它更好,而其他帖子与rootViewController在应用程序的某个时间点更改有关。我对此感到困惑,并且在 Apple 的文档中找不到关于这一点的任何建议。

当您的应用程序中可能有不同的内容视图控制器时,最佳实践应该是什么?例如,假设您有一个选项卡式应用程序 ( UITabBarController),您希望首先显示登录或注册 ( UINavigationController) 的欢迎视图:

1) 使用固定的方法rootViewController。我认为您应该将 设置UITabBarControllerrootViewController,因为应用程序的核心是选项卡,但如果需要用户凭据,则UINavigationController在 中设置 a UITabBarController,隐藏选项卡栏,以推送欢迎视图并导航到登录/注册视图控制器。

2)接近切换rootViewController。首先,如果需要用户凭据,将 设置UINavigationControllerrootViewController以显示欢迎视图并导航到登录/注册,一旦成功提供用户凭据或成功创建帐户,切换rootViewControllerUITabBarController以显示核心选项卡式应用程序。

如果最好的通用方法是根据需要进行切换rootViewController,您会考虑哪些内存管理注意事项?我是否需要strong在 AppDelegate (UITabBarControllerUINavigationController) 中有两个属性?切换时视图控制器之间的过渡又如何rootViewController:它是平滑的,还是应该为它设置动画?

提前致谢

4

1 回答 1

0

切换 rootViewController 的方法很适合。首先,如果需要用户凭据,将 设置UINavigationController为 rootViewController 以显示欢迎视图并导航到登录/注册,一旦成功提供用户凭据或成功创建帐户,将 rootViewController 切换到UITabBarController以显示核心选项卡式应用程序

如果您想将用户凭据存储在 tabbarcontroller 中。将它们存储在您的主包中NSUserDefaultsplist在文档目录中创建。

于 2013-07-18T05:00:22.187 回答