UITableViewStyleGrouped在iOS 6中显示为普通

时间:2012-09-21 14:49:10

标签: ios uitableview ios6

当使用iOS 6 SDK并在iPhone 5.0模拟器中运行我的应用程序时,我的tableview显示为分组样式表视图。但是,当我在iPhone 6.0模拟器中运行时,它显示为UITableViewStylePlain表视图。

任何想法会导致这种奇怪的行为?除了tableview单元格中的textview之外,我在tableview中没有做任何过于疯狂的事情。

2 个答案:

答案 0 :(得分:6)

我有一个分组的tableview,它在iOS6中使用代码正常工作:

tableView = [[UITableView alloc] initWithFrame:CGRectMake(0,0,self.bounds.size.width,self.bounds.size.height) style:UITableViewStyleGrouped];
[tableView setDataSource:self];
[tableView setDelegate:self];

您是使用“界面”构建器来创建此分组的表视图还是以编程方式创建它? iOS6和以前创建的界面构建器视图似乎存在很多问题。

如果你正在使用IB创建东西,你可以尝试在代码中重新创建tableview(冗余和无用,我知道,但它可能会显示出什么问题)。

在viewDidLoad()函数的某处放置

    if(tableView)
    {
        [tableView removeFromSuperview];
    }
    tableView = [[UITableView alloc] initWithFrame:tableView.frame style:UITableViewStyleGrouped];
    [tableView setDataSource:self];
    [tableView setDelegate:self];
    [self addSubview:tableView];

如果不使用arc,这可能是编码不好或导致内存泄漏,但看看你是否以这种方式获得分组样式会很有趣。

答案 1 :(得分:3)

此代码为我解决了ios6分组的tableview问题:

tableView.backgroundColor = [UIColor clearColor];
tableView.opaque = NO;
tableView.backgroundView = nil;