首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >UITableView在IOS7中可见,但在IOS6中不可见

UITableView在IOS7中可见,但在IOS6中不可见
EN

Stack Overflow用户
提问于 2014-02-13 20:41:12
回答 2查看 797关注 0票数 1

我有一个UIScrollView,里面有一个小UITableView。在iOS-7中,一切都工作得很完美,但在iOS-6中,表视图根本不显示,完全不可见。所有东西都被实例化,委托和数据源方法被调用,但是UITableView没有出现。空白处什么都没有。

有人知道为什么会发生这种事吗?

更新:

它只是带有本机单元格的原生UITableView。

下面是一些示例代码:

代码语言:javascript
复制
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    return [_gridTableData count];
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *gridCellId = @"gridCellID";

    UITableViewCell *cell = (UITableViewCell *)[tableView dequeueReusableCellWithIdentifier:gridCellId];

    if (cell == nil) {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue2 reuseIdentifier:gridCellId];
        [cell.textLabel setFont:[UIFont fontWithName:@"HelveticaNeue" size:12]];
        [[cell textLabel] setText:_gridTableNames[[indexPath row]]];
        [cell.detailTextLabel setFont:[UIFont fontWithName:@"HelveticaNeue" size:12]];
        [[cell detailTextLabel] setText:_gridTableData[[indexPath row]]];
    }

    return cell;
}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-02-14 13:34:46

在一些推荐的日志语句之后,我发现了问题所在:

在iOS6中,UITableView的帧的高度变为0。在"viewDidLoad“期间,高度是正确的(94p),但在此之后,高度始终为0。

但我真的不知道为什么会这样。在iOS7中,UITableView的高度从不改变。

例如,我可以通过在"viewDidLayoutSubviews“中重新设置UITableView的帧高来”修复“它。但是,如果任何人有一个干净的方法解决这个问题,或知道这种行为的根源,它将是值得赞赏的。

票数 0
EN

Stack Overflow用户

发布于 2014-02-13 21:46:13

请记住,在iOS 7中,默认情况下,单元格的背景是白色的。在6和更早的时候它是透明的。这意味着,如果在覆盖黑色背景的表中有黑色文本,它将在6或更早的时间内不可见。(看一些屏幕截图会有帮助。)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21765025

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档