iPad用storyboard⇔iPhone用Storyboardへの変換
公開日:
:
最終更新日:2015/07/21
Tips InterfaceBuilder
iPad用アプリとしてiPad用前提のstoryboardから、iPhone対応にするにあたり、sizeclassを意識してstoryboard1つでやるより、(旧態依然としてる感もありますが)iPad用とiPhone用の2つのstoryboardで管理したほうが作りやすい(保守・追加の手間はかかる)ので、テクニックとして要所を押さえる感じでメモしておきたいと思います。
手順
(1)storyboardファイルのコピー
storyboardの本体はバイナリではなく、XMLなのでstoryboardファイルをコピーしてプロジェクトに追加。名前は適当で構わないですがiPad用/iPhone用の区別がつきやすいようにするといいでしょう。
(2)変換したいstoryboardファイルをソースコードで開く

(3)storyboardファイルの編集をする
ソースコードで直すべき部分は以下の2箇所のようです。
<document>要素の targetRuntime
[iPad]
iOS.CocoaTouch.iPad
[iPhone]
iOS.CocoaTouch
<simulatedScreenMetrics>要素
[iPad]
<simulatedScreenMetrics key=”destination”/>
[iPhone]
<simulatedScreenMetrics key=”destination” type=”retina4″/>
(4)storyboardを変更先のデバイスに合わせて変更する
iPhone用ではformSheetやpopoverなどは使えないので適宜Modalなり、pushなりに変更しないといけませんし、サイズも違うのでコンテンツのサイズ調整等は必要なのでガンガンいじることになります。1から作るよりは楽だと思いますので、ここはがんばりどころでしょう。
関連記事
-
-
plistファイルに色を入れる
plistファイル中にUIColorを入れたい!という場合。普通RGBAの値を数値で入れるとかするけ
-
-
HTMLParserを修正する
HTMLスクレイピングしてる時に役立つライブラリであるObjective-C-HMTL-Parser
-
-
Xcode8で余計なログを抑制する
Xcode8に更新してから、妙にログが増えたので、NSLogで明示したのと実行時エラー以外のログを吐
-
-
GoogleスプレッドシートからCSVにエクスポートしたデータを得る方法
情報がない中さんざ苦労しましたが、Googleスプレッドシート(の最初のシート)をCSVとしてエクス
-
-
バージョンアップ版があることを通知する
拍子抜けするほど簡単だったので、「アプリのバージョンアップの通知をどうするか」という話についてTip
-
-
AdMob組み込み覚書
書籍ではコレがかなり参考になるのでご紹介。 表題の通りで、組み込みで要注意っぽい部分だけを
-
-
ENMLからHTMLへの変換
最近EvernoteAPIをいじっているので、コレに関するノウハウをとりあえず断片的に引っかかったと
-
-
実機テストしたときのデータを取り出す
Xcodeでコンパイルして実機テストしている場合に、テストデータを実機から取り出す方法です。 以下
-
-
User Defined Runtime Attributeについての覚書
UILabelに上下左右のパディングをつける方法を探して、結局「自分で以下のようなメソッドを持った拡
- PREV
- UIAutomation関連覚書
- NEXT
- bitbucketのtips
