如何将重复背景图像设置为UITableCell

时间:2010-07-13 04:36:20

标签: iphone image uitableview background repeat

当我使用以下代码将重复背景图像设置为UITableView时,确定:

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

但当我使用它通过以下代码将重复背景图像设置为UITableViewCell时,没有任何反应,我不知道为什么,我也无法为此单元格设置背景颜色。

cell.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"bg.png"]];

有没有人知道这样做的方法?请帮帮我!

2 个答案:

答案 0 :(得分:9)

cell.backgroundView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"cell.png"]];

将进入此代码块:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

TableViewCell *cell = (TableViewCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
        cell = [[[RecipeTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
    cell.backgroundView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"cell.png"]];

    cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
        cell.selectedBackgroundView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"cell-on.png"]];
    }    
// Configure cell

return cell;
}

你也可以看到如何在里面设置所选图像:selectedBackgroundView。

cell.selectedBackgroundView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"cell-pressed.png"]];

我不确定重复,但我很确定backgroundView可以设置contentMode。

答案 1 :(得分:1)

哦,它比我想象的要容易得多。我只需要通过以下代码设置背景图片:

cell.backgroundView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"bg.png"]];

并使用此背景图像自动填充整个单元格背景视图。 :)