【问题标题】:UITabBar disappearsUITabBar 消失
【发布时间】:2012-08-28 16:48:57
【问题描述】:

我需要在不使用 UITabBarController 的情况下实现选项卡式视图。我创建了一个视图并向其添加了一个 UITabBar 并将代码设置为动态地将子视图添加到视图中。当我在 willAppear 中添加第一个子视图时,标签栏不再可见。我以为新视图会覆盖它,所以我缩短了添加的视图,但随后模拟器底部仅显示空白。下面是我使用 uiTabBar 从主控制器的 willAppear 调用的代码。我尝试过 insertSubView,也尝试过 addSubView,同样的事情发生了。

-(void)loadHomeViewController
{
    if(!self.homeViewController){
        self.homeViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"HomeView"];
        [self.view insertSubview:self.homeViewController.view aboveSubview:self.tabBar];
    }

    [self.view bringSubviewToFront:self.homeViewController.view];
}

【问题讨论】:

  • 我现在不在电脑前测试这个建议;您添加为子视图的视图,而不是缩短它,尝试设置视图在底部有一个选项卡栏的属性,我相信它在属性检查器中执行此操作。希望这行得通。我记得在某处读过 Apple 不鼓励做你想做的事情,因为使用 tabbar 呈现视图很麻烦,UITabBarController 会为你处理。
  • 你有什么理由不想使用 UITabBarController?]]
  • 显然你不应该在导航控制器中使用 UITabBarController。
  • 我没有看到标签栏的属性

标签: iphone ios cocoa-touch ios5


【解决方案1】:

试试:

-(void)loadHomeViewController
{
if(!self.homeViewController){
    self.homeViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"HomeView"];
    [self.view insertSubview:self.homeViewController.view belowSubview:self.tabBar];
}

}

【讨论】:

  • 这行得通。我没有意识到下面/上面是基于 Z 索引,而不是指 y 索引。 Z 指数更有意义。最重要的是,不管怎样,我所做的一切都被取消了。
【解决方案2】:

在UITabBarController 和UIViewController 之间再添加一个UINavigationController。 :)

或者我认为这对你有帮助...... link阅读评论

【讨论】:

  • 我没有使用 UITabBarController。我到处都在阅读你不应该同时使用 UINavigationController 和 UITabBarController 的地方。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-01-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多