2017-04-03 11 views
0

私は最近iOS Spritekitを開始しました。ほとんどのチュートリアルやStackOverflowのトピックでは、SKSpriteNodeを配置するためにストーリーボードを使用することはできないので、私はレイアウトに苦労しています。特に、UILabelsのような他のコンポーネントもあります。等、

なる座標系に変換した後 -

Iこれは目に見えないUIViewsを配置することにより、ハック(および他の構成要素とそれらに自動レイアウトを行う)、その値に基づいてSpriteNodeを配置しますSKSceneに値を渡しますこのアプローチには潜在的な問題がありますか?単純なケースでは機能しますが、明らかにハックです...:P
また、SpriteNodeのレイアウトの方がいいですか?私はRayWenderlichチュートリアルを行っていますが、これまでのところ多くはハードコーディングされた位置にあるようです。ストーリーボードの非表示UIViewを使用してSKSpriteNodeの位置を設定します。

答えて

0

これは確かに実行する必要がある以上の作業であり、パフォーマンスの問題が発生する可能性があります。これを行う代わりに(そして正しい方法として)、Xcodeのシーンエディタを使用します。

新しいSpriteKitシーンファイルを作成し、それにノードを追加します。 SKSceneクラスの新しいSwiftファイルを作成し、シーンファイルのカスタムクラスを設定します。

その後、あなたは(IBOutletのように)あなたのクラスにそれらのノードを取得するためにしなければならないすべては、答えるために、次の...

override func didMove(to: view){ 
    let shipNode = self.childNode(withName: "shipNodeName") as! SKSpriteNode 

} 
+0

感謝です!チュートリアルも見つけました。 – bkaooo

関連する問題