2

哇,那是一口吗。:)

我们已经看到了一个关于在标签栏中自定义更多菜单(表格视图)的好帖子。

对于我们的下一个技巧......如何将背景图像添加到表格单元格?

我想我可以在我的更多表视图的数据源类中覆盖tableView:cellForRowAtIndexPath:(有关方法,请参见前面的链接)。唉,它只会改变每个单元格左右的图像和附件视图下的背景。

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

    // Let the original Data Source get a hold of the cell first.
    UITableViewCell *cell = [originalDataSource tableView:tableView cellForRowAtIndexPath:indexPath];

    // If we override the textColor, that works fine. (Commented out for now.)
    //cell.textLabel.textColor = [UIColor whiteColor];

    // If we override the background view … that doesn't work so well.
    cell.backgroundView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"cellBackground.png"]];

    return cell;
}

我知道,imageNamed:是邪恶的,也许我应该创建一个背景图像并在整个过程中重复使用它(而不是分配多个UIImageView对象)。除了这些东西,还有什么想法吗?(我也尝试调整 textLabel 的背景颜色,但无济于事……除非我在那里做错了什么。)

4

2 回答 2

2

是答案...

将代码添加到

  • (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

MoreTableViewDataSource 方法

于 2010-11-18T10:52:51.487 回答
1

除了 Sijo 的回答帖子(谢谢!),我刚刚意识到SO 上还有另一个线程采用了类似的策略......除了我对这段代码了解更多。但是,我从来没有将它交叉引用回这个问题/线程!所以就在这里。请特别参阅 Ian1971 的回复。

于 2010-11-19T12:38:59.347 回答