在iPhone中使用图像(正常和@ 2x)

所以我正在构build一个使用button图片的应用程序。 我提供了正常的图像和@ 2倍的图像,但我并不总是确定我应该使用哪一个。 如果我使用normal.png或者normal@2x.png,基本没有区别。 不过,我读过使用@ 2x需要更多的内存,所以我觉得我不应该这样做。 但是,当我在iPad模拟器中启动我的应用程序时,使用正常大小的图像时看起来很糟糕,因为它需要resize。 当我使用@ 2x图像时,看起来很正常。 那么,我应该如何处理这个问题的任何build议?

您应该在您的应用程序中使用.png@2x.png包含图像以支持视网膜设备。 这为您的用户提供了一个不错的用户体验。

在整个代码中,你都没有明确指定@2x后缀,因为操作系统会为你处理这个问题。 例如,如果您在项目中包含image.pngimage@2x.png ,并通过以下方式访问它:

 UIImage* image = [UIImage imageNamed:@"image"]; 

操作系统将为您select正确的图像(非视网膜设备.png ,视网膜设备@2x.png )。 只要遵循一般的内存pipe理准则,就不必担心每个内存使用的差异。

你应该:

  • 在您的应用中包含普通图片和@ 2X图片。
  • 一旦你完成了应用程序检查它的内存占用(是应用程序内存不足或经常内存警告?一旦压缩是应用程序非常大,需要太长的时间来下载你的口味?)
  • 如果内存出现问题,请开始删除@ 2X资源。 您应该根据资产有多大以及在resize时看起来差多less来消除这些资产。 例如,全屏纯色背景在resize时不会有太大差异,并可能为您节省一些内存。 有很多复杂线条的小button在resize时会显得更加糟糕,但不会占用大量内存。