2014-11-03 60 views
2

我使用Sprite KitSwift中創建了一個非常簡單的遊戲。遊戲有一個簡單的網格SpriteKitNodes,我想問一下,在單次拍攝中爲所有設備開發它的更好方法是什麼。適用於任何設備的iOS 8遊戲和SpriteKit

我已經在故事板中學到了新的Size Classes功能,但是它可以在SpriteKit這裏使用嗎?我怎樣才能通過代碼實現約束?

在這裏,我只是在確定的位置創建節點,但當然他們需要根據設備的大小進行操作。

func addNodeToScene(x: CGPoint,y: CGPoint) 
    { 
     let node = SKSpriteNode(color: self.colorOfSpriteNode, size: CGSize(width: 50, height: 50)) 

     node = String(format: "node%d", self.nodeIdentifier) 
     ++self.nodeIdentifier 

     node.position = CGPoint(x: x, y: y) 

     addChild(node) 
    } 

我檢查了類SKContraint,它可以用於此目的嗎?

回答

-2

這裏是如何確定它們是否在iPad(此代碼是客觀的C,但要真正易於轉換爲SWIFT)

if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) 
{ 
    return YES; /* Device is iPad */ 
} 

這裏是一個很好的職位櫃面你要確定更具體iphone尺寸:Detecting iPhone 6/6+ screen sizes in point values

-hi RAWR

+0

有了這個方法,我需要編寫不同的片基上的每個設備的規格代碼,而這正是我不想做的事。 – r4id4 2014-11-04 10:17:02

+0

也許還有其他的東西,比如float scalar = self.size.width/variable;然後使用該標量來設置skspritenodes的大小(比例); [節點setScale:1.0 *標量];如果你能得到你的標量,它將適合所有類型的屏幕尺寸 – helloGo 2014-11-05 07:49:46