Monotouch:使用Tab栏控制器和导航控制器。 AppDelegate中有哪一个?

时间:2014-05-02 22:31:31

标签: uinavigationcontroller xamarin.ios uitabbarcontroller uitabbar uinavigationitem

我是monotouch的初学者,并创建了一个带有登录屏幕的应用程序,该屏幕包含指向忘记密码页面和注册页面作为导航控制器的链接。根视图控制器是导航控制器。

现在,登录后,用户会看到带有标签栏控制器的标签式ui(4个标签)。每个选项卡都有自己的一组页面,我打算使用导航控制器进行导航。

实现此目的的最佳方法是什么?我的根视图控制器应该是Nav。控制器或标签栏控制器?由于导航控制器作为root用户在逻辑上工作,如果它是第一次登录方案。但是如果保存了用户的凭据,那么我会在打开应用程序时直接打开选项卡式界面。感谢帮助

1 个答案:

答案 0 :(得分:1)

我建议从导航控制器开始作为根视图控制器,它已将登录屏幕设置为其用户尚未登录的情况下的唯一视图控制器。从该屏幕,您可以简单地推送您的注册和忘记密码屏幕(在基本导航控制器中,您不必为每个新屏幕设置新的导航控制器,除非您想以模态显示它(呈现而不是推送它)。

用户登录后,只需将AppDelegate中的根视图控制器切换到成为新根的tabbar控制器。

对于标签栏中显示的每个选项卡,您可以定义一个导航控制器,该控制器再次包含您要在该特定选项卡项目上显示的第一个屏幕。因此,如果您有4个选项卡,则设置4个导航控制器并在UITabBarController.ViewControllers中传递它们。

(我目前选择完全相同的设置,所以我很确定它有效: - ))。