这是我第一次尝试为视网膜或非视网膜设备设计两个版本的图像,所以我怀疑我做错了什么,但我创建了两个版本的图像,一个是 302x193,另一个是 604x386。它们分别命名为“displayCell1.png”和“displayCell1@2x.png”。
我还给 @2x 图像打了水印,以确保我可以知道哪个被显示。据我所知,我的视网膜设备(或 iPhone 4 模拟器)应该自动检测到 @2x 版本的存在并显示出来。然而,以下代码只显示标准分辨率版本。任何帮助将不胜感激:
我还给 @2x 图像打了水印,以确保我可以知道哪个被显示。据我所知,我的视网膜设备(或 iPhone 4 模拟器)应该自动检测到 @2x 版本的存在并显示出来。然而,以下代码只显示标准分辨率版本。任何帮助将不胜感激:
- (void) tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath {
static UIImage *bgImage = nil;
if (bgImage == nil) {
bgImage = [[UIImage imageNamed:@"displayCell1.png"] retain];
}
cell.backgroundView = [[[UIImageView alloc] initWithImage:bgImage] autorelease];
cell.backgroundView.contentMode = UIViewContentModeTopLeft;
}
我也尝试过只使用imageNamed:@"displayCell1"
,但也没有成功。
如有需要,我可以提供更多细节。谢谢!
编辑:
我现在已经给两张图片加了水印以确保我知道我正在查看的内容。清理目标没有帮助,这些图片确实包含在.app包中。
这是第一张图片:
尺寸为302x193
这是第二张图片:
尺寸为604x386
当我运行上面的代码时,我得到的结果如下(请注意,单元格高度被调高,因此屏幕上只显示一个单元格):
我对此感到非常困惑。