0

我有一个适用于 iPhone 的应用程序,它使用了一些与视网膜和非视网膜设备兼容的图像。当我在任何 iPhone 模拟器上午餐应用程序时,它都能完美运行,加载视网膜和非视网膜图像。

当我选择要在我的物理设备 ( iPhone 4 ) 上运行的应用程序时,就会出现这些问题。在这种情况下,视网膜图像不再加载,一切看起来都很模糊。

因为我还没有开发者帐户,所以我使用了“不要代码签名” 。我只是想感受一下我的应用程序,可能是因为这个吗?

这是一个在我的物理设备上具有相同行为 的示例项目:http: //db.tt/XL4DPLH8

已解决:视网膜图像的名称为 2X 而不是 2x...也在项目example.app / 感谢 Adam 的回答(他的回答消失了)

4

1 回答 1

0

通过 NSLog 在启动时检查分辨率,然后设置适当的图像...

 - (void)viewDidLoad
 {
 [super viewDidLoad];

 //   NSLog(@"bound :%f", [[UIScreen mainScreen] bounds].size.height);
 NSString* imageName;
 if([[UIScreen mainScreen]bounds].size.height == 568)
 {
    imageName= @"568h@2x.png";
 }
 else{
     imageName= @"bg@2x.png";  
 }
 self.view.backgroundColor = [[UIColor alloc] initWithPatternImage:[UIImage  imageNamed:imageName]];

希望帮助

于 2013-04-18T14:25:38.797 回答