代码的相关部分在 - tableView:cellForRowAtIndexPath:
:
cell.textLabel.backgroundColor = [UIColor clearColor];
if (indexPath.row == 0) {
cell.backgroundView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:[NSString stringWithFormat:@"%d.jpg",result.level]]];
} else {
cell.backgroundView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:[NSString stringWithFormat:@"%d.jpg",indexPath.row+OFFSETTOFIRSTROW]]];
}
cell.backgroundView.alpha = 0.5;
cell.backgroundColor = [UIColor darkGrayColor];
if (totalPieces) {
cell.textLabel.textColor = [UIColor colorWithRed:0.1 green:0.5 blue:0.1 alpha:1.0];
cell.textLabel.shadowColor = [UIColor blackColor];
if (indexPath.row == 0) {
cell.textLabel.shadowColor = [UIColor colorWithRed:0.0 green:0.5 blue:0.0 alpha:1.0];
cell.textLabel.textColor = [UIColor yellowColor];
cell.backgroundView.alpha = 1.0;
}
cell.textLabel.shadowOffset = CGSizeMake(1.0, 1.0);
} else {
cell.textLabel.textColor = [UIColor blackColor];
cell.textLabel.shadowColor = nil;
}
本质上,表格的每一行都有自己的背景图像。这在 iOS6 中正确显示。但在 iOS7 中,发生的情况是图像被背景颜色覆盖。也就是说,直到用户滚动表格。当用户滚动表格时,它会正确显示。是什么让它在第一次演示时表现不同?我应该怎么做才能修复它?
预期的结果是覆盖整个单元格的深灰色背景色。上面是背景图像,它具有一定的透明度,背景颜色应该通过它显示出来。上面是文本,它具有透明背景,因此图像/单元格背景可以显示出来。
除非我听到别的声音,否则我想我会做的是堆叠两个图像而不是使用单元格背景。