2011-02-23 58 views
3

我有一个导航控制器。我创建一个标签栏控制器,并添加3个子视图。这样我可以导航回到根视图控制器。导航控制器通过标签栏控制器推动时禁用BackButton

问题是,因为我有我的导航控制器在选项卡栏格式中,我无法禁用后退按钮。

如果只有一个视图控制器被推到导航控制器上,我可以禁用后退按钮,但是当我将标签栏控制器推到导航控制器时,后退按钮未被禁用。我想禁用它并添加我自己的自定义按钮。

回答

7

您需要在tabBarController上设置导航项,而不是视图控制器。所以,如果你想禁用从控制器里面的导航控制器里面的视图控制器的后退按钮,你会使用代码:

self.tabBarController.navigationItem.hidesBackButton = NO; 
+0

嗨,这个工程。但问题在于后退按钮对所有选项卡都是隐藏的,而不仅仅是来自当前的导航控制器。我怎样才能禁用一个标签,而不是所有的标签? – Pintu 2011-02-23 01:24:12

+0

@ user612355:在你希望隐藏的选项卡中,将上面的代码放在你希望可见的选项卡中,放上面的代码,但是将NO改为YES。 – 2011-02-23 09:23:07

+0

不幸的是(从SDK 4.3开始)有一个错误,如果你隐藏然后重新显示导航栏,那么即使不应该显示返回按钮也会显示。提起。 – Oscar 2011-06-15 02:35:10

相关问题