如何在SpriteKit中支持多种屏幕尺寸?

我想制作支持所有iOS设备的通用游戏,除了使项目如何让我的游戏支持所有屏幕尺寸之外,还有一种方法是通过代码检测屏幕尺寸,并根据尺寸更改graphics和代码,每个设备的graphics分辨率应该是多less?

使用此代码来确定屏幕的宽度和高度。 您也可以找出正在使用的设备。

struct ScreenSize { static let SCREEN_WIDTH = UIScreen.mainScreen().bounds.size.width static let SCREEN_HEIGHT = UIScreen.mainScreen().bounds.size.height static let SCREEN_MAX_LENGTH = max(ScreenSize.SCREEN_WIDTH, ScreenSize.SCREEN_HEIGHT) static let SCREEN_MIN_LENGTH = min(ScreenSize.SCREEN_WIDTH, ScreenSize.SCREEN_HEIGHT) } struct DeviceType { static let IS_IPHONE_4_OR_LESS = UIDevice.currentDevice().userInterfaceIdiom == .Phone && ScreenSize.SCREEN_MAX_LENGTH < 568.0 static let IS_IPHONE_5 = UIDevice.currentDevice().userInterfaceIdiom == .Phone && ScreenSize.SCREEN_MAX_LENGTH == 568.0 static let IS_IPHONE_6 = UIDevice.currentDevice().userInterfaceIdiom == .Phone && ScreenSize.SCREEN_MAX_LENGTH == 667.0 static let IS_IPHONE_6P = UIDevice.currentDevice().userInterfaceIdiom == .Phone && ScreenSize.SCREEN_MAX_LENGTH == 736.0 static let IS_IPAD = UIDevice.currentDevice().userInterfaceIdiom == .Pad && ScreenSize.SCREEN_MAX_LENGTH == 1024.0 } 

您可以在debugging器中println()这些值。

那么,GameScene应该inheritanceSKScene ,你可以通过self.frame.sizeself.frame.widthself.frame.height分别得到大小,宽度和高度。

这个链接也可能帮助你。