Ios 如何使用正确分辨率的图像填充UITableViewCell?

Ios 如何使用正确分辨率的图像填充UITableViewCell?,ios,objective-c,xcode,uitableview,Ios,Objective C,Xcode,Uitableview,我已经设置了一个包含图像单元格的UITableView 我正在使用资产目录将图像恰当地命名为image1.png,image1@2x.png,及image1@3x.png. 我有一个NSMutableArray,我使用资产目录中的图像名称初始化它,例如: viewDidLoad: self.LogoArray = [ [NSMutableArray alloc] initWithObjects:@"image1",@"image2", image2", nil]; 然后,我使用自己的自定义图像

我已经设置了一个包含图像单元格的UITableView

我正在使用资产目录将图像恰当地命名为image1.png,image1@2x.png,及image1@3x.png.

我有一个NSMutableArray,我使用资产目录中的图像名称初始化它,例如:

viewDidLoad:

self.LogoArray = [ [NSMutableArray alloc] initWithObjects:@"image1",@"image2", image2", nil];
然后,我使用自己的自定义图像创建了一个自定义单元格,以显示在单元格中:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    // some code here

    cell.customImageView.image = [UIImage imageNamed:[self.LogoArray objectAtIndex:indexPath.row] ];

    // some code here
}
问题是,当我在不同的iPhone平台上运行时,图像非常模糊,分辨率很差

我相信编译器不知道image.png的哪个版本,image@2x.png或image@3x.png根据其运行的iPhone平台分配给cell.customImageView.image

我是否应该使用另一种替代方法来允许Xcode从资产目录中选择适当的图像文件,以便在不同的iPhone平台上正确显示它

以下是我的资产目录的外观:

LogoArray中的对象使用资产目录中的正确名称进行适当命名


谢谢

您不需要知道资产目录下的文件名

在您发送的屏幕截图中,您只需使用以下名称:

self.LogoArray = [[NSArray alloc] initWithObjects:@"barona_logo", @"chase_logo", @"crabhut_logo", nil];

你应该没事。

你的xcasset目录的名称是什么?你的图像在资产目录的@2x和@3x占位符中分配是否正确?我更新了我的问题,请看。你的代码看起来应该对我有用……据我所知,模拟器从未使用过@3x,你必须在设备上运行它才能看到它们。这与像素在6.0上的渲染方式有关+