UITableView与滚动背景图案

时间:2013-04-05 16:15:26

标签: ios objective-c uitableview uibackgroundcolor

我有一个UITableView,其backgroundColor属性设置如下:

tableview.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"IMAGE"]];

这为tableview提供了一个滚动的背景,这正是我想要的。

问题是,当我向tableview添加单元格时,在每个单元格中,tableview的背景图案开始 new /重新开始:

UIScrollView issue

在上图中,您可以看到红色圆圈区域中的问题。

对于tableview单元格,我已将backgroundColors设置为clearColor

  • backgroundView
  • textLabel
  • detailedTextlabel
  • contentView

我也试过设置

cell.backgroundView = [UIView new];
cell.backgroundView.backgroundColor = [UIColor clearColor];

和contentView也一样。

附加说明: 设置tableview的backgroundView没有用,因为那时背景不再滚动了!

2 个答案:

答案 0 :(得分:3)

刚遇到这个问题并发现这个修复了拥有它自己的backgroundColor副本的单元格

- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath {
    [cell setBackgroundColor:[UIColor clearColor]];
}

答案 1 :(得分:1)

以下是我要做的事情:

1)创建视图控制器并将视图背景颜色设置为图案图像。

2)将表视图控制器作为子视图控制器添加到新创建的视图控制器。这可以在代码中完成,或者如果您使用的是iOS 6和故事板,则可以使用嵌入式segue。如果您在代码中执行此操作,则可能需要手动设置表视图控制器的框架。

3)将表格视图控制器的背景颜色设置为[UIColor clearColor]

我有类似的问题,这对我有用。