私は、デバイスの種類ごとに要素のオフセットとサイズが異なる設計をしています。ポートレートの異なるiPhone(すべてコンパクト|レギュラー)に対して、ストーリーボードの制約に(サイズクラスなどを使用して)異なる値を設定する方法はありますか?
いいえの場合 — そのようなタスクを解決する最善の方法は何ですか?
アップデート
たとえば、ロゴがありますが、各プラットフォーム (異なる iphone を含む) で、ロゴの上部オフセットが異なります (ポイントでも)。
そういうコードは避けたい
- (CGFloat)topLogoConstraintAccordingToSize:(CGSize)size {
CGFloat top = 0;
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad){
if (size.height > size.width){
top = 56;
} else {
top = 35;
}
} else {
if (IS_IPHONE_4){
top = 36;
} else if (IS_IPHONE_5){
top = 22;
} else if (IS_IPHONE_6){
top = 50;
} else if (IS_IPHONE_6_PLUS){
top = 56;
}
}
return top;
}
//宇宙の別の場所
self.logoTopConstraint.constant = [self topLogoConstraintAccordingToSize:size];
また、プラットフォームごとに個別のストーリーボードを作成したくありません。さらに悪いことです。