1

我正在做一个应用程序,在启动应用程序时,将显示一个带有搜索和登录视图的 tabbarController。当我单击搜索 tabbaritem SearchView 时,将出现。当单击登录 tabbaritem 时,将出现登录视图。当登录成功时将出现带有四个 tabbaritems(搜索、我的个人资料、我的活动、注销)的 tabbarcontroller。现在,当我单击注销时,我必须注销帐户,并且需要再次显示启动视图。

任何帮助,将不胜感激..

4

1 回答 1

1

它与您的应用程序架构有关。我想把你的问题分开:

我对objective-C非常陌生,我正在做一个应用程序,在启动应用程序时,将显示一个带有搜索和登录视图的tabbarController。

回复:最初您需要在 AppDelegate 中有一个导航控制器,它将像父导航控制器一样工作,并且您需要将您的标签栏控制器作为 rootviewcontroller 添加到它,这将有助于在您想要退出第二个标签栏控制器时登出。

登录成功后,将出现一个带有四个标签项(搜索、我的个人资料、我的活动、注销)的标签栏控制器

回复:现在,当您登录时,您将推送一个带有 4 个选项卡的新标签栏控制器,它将被推送到父导航控制器(我们在 app deleate 中创建)。

现在,当我单击注销时,我必须注销帐户,并且需要再次显示启动视图

回复:现在,当您想要注销并且在完成所有注销相关的事情(例如关闭会话等)之后,如果您想要弹出视图控制器,就像[self.navigationController popViewController]它不会帮助您一样。因为 self.navigation 控制器是新标签栏的导航控制器(4 个标签,您在 login 后推送)。因此,您需要在此处访问父导航控制器,我们在应用程序委托中将其创建到 Logout 视图控制器中,例如 : [appDelegate.navController poptoRootViewController]

所以这里的重点是你需要访问和控制父导航控制器。

希望这可以帮助。

于 2012-11-01T07:14:29.357 回答