定位多种尺寸时的iPhone应用程序设计问题

时间:2014-03-11 17:07:37

标签: ios naming-conventions screen-resolution

我的核心问题是根据设备的屏幕分辨率切换图像资源。 我知道命名约定用于显示启动画面和应用程序图标。它适用于所有图像资产吗?我可以设计一个屏幕并使用正确的命名约定来定位多个屏幕分辨率吗? 如果没有,那么最佳解决方案是什么?不同的xib或什么?

2 个答案:

答案 0 :(得分:0)

是的,iOS通过文件名约定在图像资源之间进行选择。见https://developer.apple.com/library/ios/documentation/Cocoa/Conceptual/LoadingResources/ImageSoundResources/ImageSoundResources.html#//apple_ref/doc/uid/10000051i-CH7-SW1

您只使用一组xib,坐标为点,而不是像素。视网膜屏幕iOS设备上的点有2个像素;较低分辨率设备上每点1个像素。几乎所有代码都可以独立于高/低分辨率差异。

此处有更多信息:https://developer.apple.com/library/ios/documentation/2DDrawing/Conceptual/DrawingPrintingiOS/SupportingHiResScreensInViews/SupportingHiResScreensInViews.html#//apple_ref/doc/uid/TP40010156-CH15

答案 1 :(得分:0)

在xcode 5+中,他们已经简化了一些事情,因此您不必再担心命名惯例了。如果你在Media.xcassets文件夹中查找新项目,你会发现你得到了一个" 1x"或" 2x"插槽,分别代表非视网膜,视网膜分辨率。只需将图像拖动到您想要的插槽中,它就会自动完成剩下的工作。

因此,您现在可以避免不准备两种分辨率。然而,最佳做法仍然是保持两者(或至少在模拟器中检查旧模型:)。