停止使用仅有视网膜的图像

如果我做以下事情将会发生什么?

  • 我用视网膜资产replace所有非视网膜资产
  • 我删除了我的项目中的所有视网膜资产(所有...@2x.png s等)

我为什么要这样做:

  1. 未来将会有越来越less的非视网膜iPhone(也由于最低的操作系统要求等)
  2. 我得到一个更轻的二进制
  3. 我的项目中没有这么多的“准重复”文件,我必须单独维护。

现在:

  1. iPhone 3GS会缩小图像并正确显示(当然还有一点点的处理费用)
  2. 即使在文件名中不再有@2x后缀,“Retina-enabled”手机是否能正确显示图像?

在99%的情况下,这将工作正常。 但是,有些情况下图片不能正确缩放(通常取决于contentMode)。 我和一个做过这件事的人一起工作,从来没有发现任何问题,尽pipe我认为这是一个糟糕的做法。

你会得到一个更轻的二进制文件,但你问老设备(内存less)做更多的工作。 如果你不想支持这些设备,那么不要,我认为这比给用户一个潜在的破坏的应用程序更好。

有更好的方法来减less应用程序中的图像大小,尽可能地重用它们,拉伸,铺瓷砖等。

3GS和iPhone 4都会显示不正确的图像。

事实是3GS不会缩小图像。 所以它不会正确显示图像。 iPhone 4将缩放非@ 2x图像(缩放两次),因此它也不会正确显示图像。

如果你决定这样做,什么都不会发生。 旧设备将尝试,但如果你让设备甚至运行你的应用程序,你将有相当多的工作来处理扩展问题。 如果您允许较旧的设备安装您的应用程序,则必须准备在较旧的设备上获得Apple的批准。 如果图像在旧设备上无法正常工作,则无法获得批准。 视网膜显示设备的使用越来越less。

但是…仍然有很多非视网膜设备仍在使用中。 保持两者对您的用户都有好处。 是的,它为您的二进制文件增加了一点额外的优势,但是在当今各种networking上的速度,这不是像过去那样的问题。

虽然您有权select支持哪些用户,并且有许多开发人员可以分享您的意见,但您仍然可以决定您最终希望支持哪一组用户。 如果你很好地画线视网膜显示器,那就这样吧。

我可以指责你,并告诉你,你应该支持每一个用户,但我相信你已经想到了这一点。 如果你只支持视网膜设备,那就去吧。 如果您准备回答为什么支持这一个设备而另一个不支持的问题,那就去做吧。 好消息是,无论你决定什么,最终你会是对的。 祝你好运。