2017-05-22 9 views
2

デバイスごとに異なるストーリーボードを作成できますが、デバイスごとに異なるシーンを作成する方法はありますか? Sizeクラスによって異なる画面に適応するにはかなり複雑なシーンが1つしかありません。異なるデバイスに異なるシーンを作成する

ストーリーボードには1つのエントリポイントしか作成できませんが、その場でシーンを交換する方法はありますか?

答えて

1

Sizeクラスは、あなたが考えるよりも欺瞞的です。その使用は非常に限られているので、例えばiPhone 5 & 6の間でレイアウトを簡単に変更することはできません。

ビューの「変更」によって、表示されているデバイスによって異なるNibを読み込むクラスを作成できます。両方のオーバーライドし

override init(frame: CGRect) 

、代わりにビューのための単一のペン先をロードする、あなたがターゲットとしているデバイスに基づいて、所望のロードここで

required init?(coder aDecoder: NSCoder) 

nib = UINib(nibName: "iPhone4Size", bundle: bundle) 

このテクニックは、ここで説明するUIDesignableで使用されています。

http://supereasyapps.com/blog/2014/12/15/create-an-ibdesignable-uiview-subclass-with-code-from-an-xib-file-in-xcode-6

「デバイスごとに異なるペン先のロード」ではないですが、それは別のペン先の名前を返すだけの単純な「スイッチケース」です。

関連する問題