iPhone 6 の画面では正しく表示されるビューがありますが、iPhone 5 の画面ではスクロールが必要です。自動レイアウトの制約を変更して、後者をスクロールする必要をなくそうとしています。
最初の 2 つのスクリーンショットは、iPhone 6 と iPhone 5 の既存の状況です。3 番目のスクリーンショットは、私が達成しようとしているものです (iPhone 5 のみ)。
次の自動レイアウト制約を書きましたが、ここに何かが欠けています:
[self addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|-(>=25,<=50)-[blueView]-(>=25,<=50)-[redView]-5-|"
options:0
metrics:nil
views:nameMap]];
ここでハグおよび/または圧縮抵抗を使用する必要がありますか? どのように?
編集して、実際のコードをさらに表示します。
[self addSubview:loginNSignupScrollView]; [self.loginNSignupScrollView addSubview:logoImageView]; [self.loginNSignupScrollView addSubview:horizontalScrollView]; [self.loginNSignupScrollView addSubview:appVersionLabel]; [self.horizontalScrollView addSubview:loginView];[self addConstraints:[NSLayoutConstraint constraintWithVisualFormat:@"V:|[loginNSignupScrollView]|" オプション:0 メトリック:なし ビュー:nameMap]];
[self addConstraints:[NSLayoutConstraint constraintWithVisualFormat:@"V:|[loginView(==350)]" オプション:0 メトリック:なし ビュー:nameMap]];
[self addConstraints:[NSLayoutConstraint constraintWithVisualFormat:@"V:|-(>=30,<=60)-[logoImageView(==35)]-(>=25,<=50)-[horizontalScrollView]-30-[ appVersionLabel]-5-|" オプション:0 メトリック:なし ビュー:nameMap]];
[self addConstraint:[NSLayoutConstraint constraintWithItem:self.horizontalScrollView 属性:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:self 属性:NSLayoutAttributeHeight 乗数:0.0 定数:350]];