2016-05-13 81 views
0

我想要建立一個應用程序使用SpriteKit的iPhone 5,6和6加。我創建了一個背景圖像每個分辨率:SpriteKit SKScene大小的iPhone 5,6和6加

image-1.png // of size 1136 x 640, for iPhone 5 
[email protected] // of size 1334 x 750, for iPhone 6 
[email protected] // of size 2208 x 1242, for iPhone 6 plus 

在Xcode中7,當我運行的iPhone 6和6加上正確的和相應的圖像我在模擬器上代碼自動拾取。但是當我運行iPhone 5的代碼時,iPhone 6圖像被選中([email protected]),而不是正確的圖像(image-1.png)。爲什麼?

在SKScene.didMoveToView()我設置場景大小視圖的幀大小:

self.size = view.frame.size 

當我將圖像添加到場景我做的:

self.addChild(SKSpriteNode(imageNamed:"image-1")) 

如果我使用「 image-1.png「,我得到了同樣的結果。

回答

0

沒有這樣的地方專門爲iPhone 5和6.他們都採取@ 2倍的圖像。所以在這兩款設備中它都會選擇@ 2x圖像。

您需要設置編程或基於條件。

參考我的老問題:Images.xcassets taking wrong image for the iPhone 6?

+0

當它!你是對的!我希望蘋果能提供的解決方案很簡單。我決定爲自己的需要創建自己的系統:我現在將後綴爲-5,-6,-6p的每個圖像名稱並執行我自己的名稱解析。 – andrewz

相關問題