首先,如果您可以使用 UITableViewDelegate 方法tableView:heightForRowAtIndexPath:简单地返回表格高度除以 5,这将使每个单元格成为表格高度的五分之一:
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
return [tableView bounds].size.height / (CGFloat)[myDataSourceArray count];
}
这适用于 iPhone 5 和 iPhone 4,前提是您已将表格配置为屏幕大小。此外,考虑到在为 iOS 编程时,您以点而不是像素为单位指定屏幕尺寸,这允许 iOS 自动处理缩放,因此您无需为视网膜/非视网膜设置单元格。
然后关于背景图像,根据您想要的最终结果,有几种不同的方法可以做到这一点。例如,如果您只想用图案图像填充单元格并让默认的表格视图分隔符将它们分开,您可以制作实现图案所需的最小尺寸的图像。(可以是 2x2px 和 4x4 @2x)然后简单地使用:
[[cell contentView] setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"myPatternImage"]]];
或者,如果您希望在单元格周围显示带有某种边框的图像,您可以使用带有帽子插图的可调整大小的图像在边框周围绘制,然后用图案填充单元格内部,这是一个截图帮助解释它是如何工作的:
然后当然你可以添加一个 UIImageView 作为单元格的子视图并将完整的图像添加到其中,这并不是完全错误的,但我不推荐它,因为我建议的其他两种方法更有效。希望这可以帮助!