代码之家  ›  专栏  ›  技术社区  ›  typeoneerror

从UItaBar中删除不带UItaBarController的选项卡

  •  2
  • typeoneerror  · 技术社区  · 15 年前

    我用的是一个没有控制器的Uitababar。如果满足某些条件,我想从UItaBar中删除选项卡。例如,我的UItaBar在Interface Builder中设置了4个选项卡。如果在编译时未启用“分数”模块,则应删除“分数”选项卡。

    // defined in IB
    #define kTabScores 1 
    UITabBar *_tabBar;
    
    
    // in viewDidLoad
    #if !INCLUDE_SCORES_SUPPORT
        // this doesn't seem to work
        [[_tabBar viewWithTag:kTagScores] removeFromSuperview];
    #endif
    
    1 回复  |  直到 15 年前
        1
  •  4
  •   typeoneerror    15 年前

    你试过使用 items 性质 UITabBar ?例如:

    // defined in IB
    #define kTabScores 1 
    UITabBar *_tabBar;
    
    
    // in viewDidLoad
    #if !INCLUDE_SCORES_SUPPORT
        NSMutableArray *newItems = [NSMutableArray arrayWithArray:_tabBar.items];
        [newItems removeObjectAtIndex:0]; //your index here.
        [_tabBar setItems:newItems animated:YES];
    #endif