Xcodeのストーリーボードって意外と不便だと思う
アプリ製作者にしか分からない話だと思うんですが、Xcodeのストーリーボードって使いにくくないですか?
最初は画面の構成がそのまま見えるし、直接部品を置けるってことで、勝手に未来を感じてたんですよ。こりゃすごいと。
でも久しぶりに触ったら、非常に面倒でしかなかったです。
作るアプリのそれにもよると思うんですが、ここへきて一番便利に感じるのはSpriteKitですね。
Xcodeの最初の選択画面で「Game」って出るあれです。
久しぶりにストーリーボードを触ったとき、なにが一番不便だったかっていうと、それは各デバイスへの対応です。
デバイスって表現で合ってるのか分かりませんが、ようはiPhone6とか5とかiPadに対応することですね。これが非常に面倒だったんです。
SpriteKitなら画面遷移のときにAspectFillをあてがえば、あとは自動でサイズを調整してくれるので、とっても楽なんですよね。
僕はいつもiPhone6の画面サイズで作って、あとはAspectFillで対応しています。
本当はもっとちゃんとしたやり方があるんでしょうが、今の僕にはこれで十分なんです。
let scene = GameScene(size:CGSize(width: 750, height: 1334))let skView = self.view as! SKViewscene.scaleMode = .AspectFillskView.presentScene(scene)
(GameViewController.swiftのところにこうやって書いてます)
let skView = self.view! as SKView
let scene = GameScene(size: self.size)
scene.scaleMode = SKSceneScaleMode.AspectFill
skView.presentScene(scene)
ストーリーボードのそれと違って、各部品をX軸とY軸を指定して置いていくんですが、こっちのほうが断然楽ですね。最初は大変に感じましたけど、慣れれば圧倒的にこっちです。
最初に仮のサイズ(自分の場合はiPhone6)を決めて、それに対して座標を指定して並べるだけで、あとは勝手に各デバイスに対応してくれるんで、ほんと楽なんですよ。レイアウト対応に気を使うことがなくなりました。
(気を使うことがないだけで、根本的なレイアウトセンスは改善されていません)
iPhoneのことだけ考えるのなら、SpriteKitで作れるアプリは極力SpriteKitで作った方が楽なんじゃないですかね。
なんかそんなことを思った次第です。