如何从UITabbar中隐藏额外的单元格更多菜单iphone?

时间:2011-12-01 15:15:20

标签: iphone uitableview uitabbarcontroller hide cells

我有UITabBarController,有6个标签。现在,最后两个屏幕(tabbar项目)将添加到More Tabitem中。在那里,它在UITableview单元格中,前两行有两个tabbar项目(2个屏幕)。现在,我的问题是隐藏其他单元格(将单独的颜色设置为白色)。我怎样才能做到这一点?可能吗?提前谢谢。

3 个答案:

答案 0 :(得分:3)

感谢您的所有答案。我已经用拉文先生的答案解决了这个问题。

UITableView *moreTableView = (UITableView *) [[musicTabBar.moreNavigationController topViewController] view];
        moreTableView.backgroundColor =  [UIColor colorWithRed:0.94 green:0.96 blue:0.96 alpha:1];
        [moreTableView setSeparatorColor:[UIColor clearColor]]; 

        for (UITableViewCell *cell in [moreTableView visibleCells]) 
        {
            cell.backgroundColor = [UIColor lightGrayColor];
        }

此代码帮助我只显示两行并隐藏所有其他行。

感谢。

答案 1 :(得分:2)

  UITableView *moreTableView = 
(UITableView *) [tabBarController.moreNavigationController topViewController] view] ;

将为您提供moreNavigationController中使用的表的引用。

[moreTableView setSeparatorColor:[UIColor clearColor]]; 

将帮助您设置设置分隔符颜色。

之后您可能需要设置单元格的背景颜色。(因为当此分隔符颜色为白色时,它肯定会隐藏具有数据的单元格之间的分隔符;)。

谢谢,

答案 2 :(得分:0)

这有点hacky,但也许,您可以更改表中的rowHeight并使其成为基于高度仅显示2个单元格。如果你这样做,那么你可以将UITableViewCell子类化,或许可以向单元格添加其他东西,以提供有关最后两个视图的一些信息。 除此之外,您可以更改tableView的大小,以便只显示2个单元格。

我希望这有帮助!