如何永久隐藏基于选项卡的应用程序中的“更多”栏

时间:2012-11-20 17:06:40

标签: iphone objective-c ios uiviewcontroller uitabbarcontroller

第一次Stackoverflow'er在这里,所以忍受我...

我正在为iPhone制作一个基于Tab的应用程序,我遇到了一个问题,我一直在努力解决问题。我一直在寻找答案的高低,但这是难以简洁地说出来的问题之一。这使得难以获得有用的搜索结果。

简而言之,我的应用程序将在底部标签栏中包含五个以上的标签项,从而导致第五个标签项标记为“更多...”。点击该项目,然后在顶部显示一个条形图(UINavigationBar),显示“更多”,以及一个UITableView,其中列出了第5,第6和第7项的标题和图标。

虽然一旦用户点击了第5,第6或第7项,我找到了摆脱顶栏的方法,但我希望永远不会显示顶部的“更多”栏。换句话说,用户点击底部的“更多...”标签项,他们看到UITableView上面没有任何栏。理想情况下,我想将自己的自定义标题图像放在列表上方,但我只是想知道我想要做的事情是否可行。

有人有任何建议吗?

1 个答案:

答案 0 :(得分:0)

UITabBarController派生一个班级,例如MyTabController。 将此类用作选项卡控制器,即在故事板中指定它。 在该控制器的initWithNibName中隐藏moreNavigationController的导航栏:

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
 {
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if (self) {
      // ... whatever you want
    self.moreNavigationController.navigationBarHidden=true;
  }
  return self;
}

导航栏不会出现。