UITableViewCell背景图像不显示

时间:2012-05-16 10:11:32

标签: iphone ios uitableview background-image

我正在尝试使用以下代码将背景图像添加到UITableViewCell

UIImage *bgImage=[UIImage imageNamed:@"green-cell-row.png"];
UIImageView *bgForFirst=[[UIImageView alloc] initWithImage:bgImage];
cell.backgroundView=bgForFirst;
[cell.contentView addSubview:venueDisplayImage];
[cell.contentView addSubview:venueDisplayName1];
[cell.contentView addSubview:venueDisplayName2];
[cell setAccessoryType:UITableViewCellAccessoryDisclosureIndicator];
cell.selectionStyle = UITableViewCellSelectionStyleGray;

但是,我在其周围的空白处获得了venueDisplayName。解决此问题并正确添加背景图像的最佳方法是什么?

3 个答案:

答案 0 :(得分:0)

您是否尝试将backgroundColorvenueDisplayName更改为[UIColor clearColor]或更改为[UIColor greenColor]

出于性能原因,请尽量避免在UITableViewCell中使用非透明视图。

答案 1 :(得分:0)

尝试这种方式:

1)TabelView将背景设置为:

tblView.backgroundView.alpha = 0.0;
tblView.backgroundColor=[UIColor clearColor];

2)在tableview的cellForRowAtIndexPath og委托方法中添加图像视图:

UIImageView *bckView = [[UIImageView alloc]initWithFrame:CGRectMake(0,0, 300,80)];
cell.backgroundView.alpha = 0.0;
cell.backgroundColor=[UIColor clearColor];
bckView.image = [UIImage imageNamed:@"cell.png"];
bckView.contentMode = UIViewContentModeScaleToFill;
[cell.contentView addSubview:bckView];

答案 2 :(得分:0)

您必须使用单元格的属性 有2个属性可以使用 1)cell.backgroundColor 2)cell.backgroundView

    cell.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageName:@""]];

在第二种情况下,您必须将任何视图设置为背景视图