*

iPad用storyboard⇔iPhone用Storyboardへの変換

公開日: : 最終更新日:2015/07/21 Tips

iPad用アプリとしてiPad用前提のstoryboardから、iPhone対応にするにあたり、sizeclassを意識してstoryboard1つでやるより、(旧態依然としてる感もありますが)iPad用とiPhone用の2つのstoryboardで管理したほうが作りやすい(保守・追加の手間はかかる)ので、テクニックとして要所を押さえる感じでメモしておきたいと思います。

手順

(1)storyboardファイルのコピー
storyboardの本体はバイナリではなく、XMLなのでstoryboardファイルをコピーしてプロジェクトに追加。名前は適当で構わないですがiPad用/iPhone用の区別がつきやすいようにするといいでしょう。

(2)変換したいstoryboardファイルをソースコードで開く
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から作るよりは楽だと思いますので、ここはがんばりどころでしょう。

関連記事

UIActionSheetの文字がブレて多重表示される

UIActionsheetを使っていて、iOS7/iPadの組み合わせで起こる不具合らしき挙動が起こ

記事を読む

アプリ内で自動スリープの設定を無効化する

「設定」アプリ内で設定したスリープ時間設定を無効にするためのコード。 アプリがバックグラウンドにな

記事を読む

UICollectionViewのヘッダとフッタの設定

UICollectionViewで慣れないのがヘッダフッタで、毎度「どうやって設定するんだっけ…」と

記事を読む

画面回転をしたあとに、UITextViewの先頭を表示する

回転によりサイズが可変するUITextViewで、縦向き(ポートレイト)から横向き(ランドスケープ)

記事を読む

UIAlertControllerの取り扱い

旧聞ですが日本語版のStackOverflowが始動したようですね。 個人的な印象は「フィルタされ

記事を読む

AdMob組み込み覚書

書籍ではコレがかなり参考になるのでご紹介。 表題の通りで、組み込みで要注意っぽい部分だけを

記事を読む

実機テストしたときのデータを取り出す

Xcodeでコンパイルして実機テストしている場合に、テストデータを実機から取り出す方法です。 以下

記事を読む

UICollectionViewが画面回転した時にレイアウトが崩れた時の対応

UICollectionViewCellのサイズを、内容に合わせて動的に変えた時に起こる問題に関して

記事を読む

User Defined Runtime Attributeについての覚書

UILabelに上下左右のパディングをつける方法を探して、結局「自分で以下のようなメソッドを持った拡

記事を読む

NSDictionary/NSMutableDictionaryの”valueForKey:”と”objectForKey:”の違い

表題にある通り、似ていて混同する(そして、取り違えても「たいてい」普通に動作する)NSDiction

記事を読む

Xcode10からのimage literal / color literalの指定方法

アセットにあるUIImageの直接指定が可能なImage litera

Xcode11でのバージョン番号の取得方法

Xcode11になってバージョン番号をスクリプトから得て自動で更新する

GoogleスプレッドシートからCSVにエクスポートしたデータを得る方法

情報がない中さんざ苦労しましたが、Googleスプレッドシート(の最初

画面回転をしたあとに、UITextViewの先頭を表示する

回転によりサイズが可変するUITextViewで、縦向き(ポートレイト

NXDrawKitを導入してみる

ACEDrawingViewがObj-Cで書かれていて、いまいちメンテ

→もっと見る

    PAGE TOP ↑