设置UITableViewCell和UITableView背景的颜色

时间:2011-12-14 23:10:38

标签: iphone uitableview

我试图为我的TableView使用背景图像,所以当没有足够的数据填充屏幕上的整个表格时,我没有得到剩余的tableview单元格,所以我尝试按照这个URL,但更简单:http://cocoawithlove.com/2009/04/easy-custom-uitableview-drawing.html

我在具有UITableView插座的视图控制器中执行此操作:

    UIImage *backgroundTableImage = [UIImage imageNamed:@"form_background.png"]; // basically a gray->white gradient
    UIImageView *tableBackgroundImageView = [[UIImageView alloc] initWithImage:backgroundTableImage];
    tableBackgroundImageView.frame = self.TableView.bounds;
    self.TableView.backgroundView = tableBackgroundImageView;
    [tableBackgroundImageView release];
    self.backgroundColor = [UIColor clearColor];

然后我有一个我在IB中创建的UITableViewCell的自定义子类。在IB中,它的背景设置为White-default。我的细胞都是透明的,我只看到我的背景。如何让我的细胞保持白色。

1 个答案:

答案 0 :(得分:0)

首先在.h文件中查看视图UIView * newView;声明其属性并在.m文件中同步它

现在在cellForRowAtIndexPath

if(cell==nil){

        tableView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"imagename.png"]];

................
.........
newView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, cell.frame.size.width, cell.frame.size.height)];
[cell.contentView addSubview:newView];
................
...............
}
if(indexPath.row == 0){

newView.backgroundColor = [UIColor blueColor];

}
if(indexPath.row == 1){

newView.backgroundColor = [UIColor redColor];

}
if(indexPath.row == 2){

newView.backgroundColor = [UIColor greenColor];

}

如果有任何进一步的问题请敲我。