如果我使用iPad尺寸创build我的应用程序,如何才能find适合iPhone尺寸的“安全区域”?

我正在创build一个游戏,并希望使用iPad尺寸设置(横向:1024×768)。 从我所了解的情况来看,使用iPad设置只会在iPhone上突出部分高度。 假设我有用于iPad(1024×768)的2048×1536背景图像和用于iPhone 6+(736×414)的2208×1242图像,

一世。 我怎样才能确定iPad上的“安全区域”,这将出现在iPhone 6+的点和像素明智?

II。 iPhone 6+的“安全区域”是否与1334×750的iPhone 6(667×375)一样? 如果不是的话,那么如何确定点和像素呢?

我假设你想创build一个在iPad和iPhone上运行的通用游戏。 如果是这种情况,在属性检查器中定义graphics资源时有两种可能的方法(在selectAssets.xcassets的同时Xcode接口的最右侧)。 在“设备”部分,您可以select通用,iPhone,iPad,Apple Watch,Apple TV,Mac及其组合。

  1. 如果您只select“通用”,那么您将必须确保在iPhone和iPad上插入的资产看起来不错。 如果是这种情况,请参阅下面有关如何使您的资产安全使用通用的一些提示。

  2. 如果您select“iPad”和“iPhone”,您将不得不为iPad和iPhone单独包含相应的分辨率和长宽比。 在过去的经历中,我总是以这种方式走向。 对于iPad(1x),您必须提供1024×768的背景,对于iPad(2x),您将不得不提供2048×1536,除非您select“Single Scale”并使用单个vectorPDF文件。 分别为iPhone,你将不得不提供一个480×320(1x,只有在你需要支持旧的设备,如iPhone 3G / 3GS,相当不可能考虑到事实上Sprite-Kit是在iOS7中引入的),那么1334×750(2x )和2208×1242(3x,iPhone 6+,6S +,7+)。 使用这种方法,您不必担心“安全”区域,因为您提供的graphics将在每个设备上正确使用,而不会“切断”边缘。 只要记住,iPhone 4S和iPhone 5 / 5S / SE将需要一些背景缩放,以适应整个2倍的图片在屏幕上。 否则,它会放大。

如果您采用第一种方法,那么您应该考虑以下信息,以便使您的“通用”graphics可以安全地用于所有设备:iPhone 5 / 5S / SE …以及所有更新的显示器均具有16:9显示器比。 iPhone 4S具有3:2的宽高比(如果您的游戏支持iOS 9,则只需担心这一点)。 iPad的屏幕长宽比是4:3。

考虑到上述情况,您可以使用两条path:1.使用16:9通用资产,在iPad和iPhone 4S上切断其左/右部分。 2.使用4:3的通用资产,将其上/下部分切断在iPhone上。

以上内容适用于您的2x资产,因为这些资产将用于视网膜iPad和视网膜iPhone(4S,5 / 5S,SE,6 / 6S / 7)。

1x资产将仅用于非视网膜iPad(如果您支持iOS 9,则为iPad 2,否则请跳过)。

3倍资产将仅用于“Plus”iPhone型号。 所以我build议你只提供16:9的比例(2208×1242)。

那么,你如何计算你的“安全”区? 非常简单:

案例1(16:9的资产也用于iPad):高度1536(这是视网膜iPad的高度像素,但如果你想在iPad Pro 12.9像素完美的话,那么你应该增加到2048),宽度= 1536 * 16/9 = 2732像素宽(iPad Pro支持时为3640像素)请注意,您必须在运行时将其缩小以便适合iPhone。你的背景,不要把任何东西放在2732×1536通用图像的中间2048像素的左边或右边(左边和右边的342像素“危险”区域)如果你使用3640×2048图像(支持iPad Pro 12.9“ ),那么只能使用中间的2732像素,在454像素宽的左右边界中只留下不重要的东西。

案例1b(与上述相同,但图像较小):另一种方法是使用本机(iPhone 6 / 6S / 7)1334/750像素的图像,但随后您将不得不放大iPad的比例, iPhone 4S / 5 / 5S / SE。 在这种情况下,您的“安全”区域为1000×750(在4:3 iPad和16:9 iPhone上均可见)。

情况2(也用于iPhone的4:3资产):2x资产使用2048×1536像素的图像。 根据你在屏幕上如何定位精灵,上部和/或下部会有损失。 如果它居中,那么你的“安全”区域是2048/16 * 9 = 1152,这导致2048×1536资产中间的2048×1152。

如果您需要进一步澄清,我会很乐意详细说明。