1

スプリングとストラットを使用してコンテンツのサイズを自動的に変更しようとしています。このような制約を作成する最良の方法は何ですか? または、iOS5+ を対象とするより良い方法はありますか?

[ビュー 1 - 高さ固定]

(10 ピクセルのパディング)

[ビュー 2 - 高さ可変スクロールビュー / テーブルビュー、コンテンツを含む]

4

1 に答える 1

1

「自動サイズ変更制約」を参照することで問題を混乱させています。「自動サイズ変更」は通常、ビュー レイアウトを更新するための古い「スプリングとストラット」システムを指し、制約は新しい「自動レイアウト」システム (iOS 6 が必要) の一部であるためです。 .

とにかく、ビュー 1 を に設定autoresizingMaskしますUIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleBottomMargin。これにより、上端、左端、右端がスーパービューに対して固定されたままになり、高さが固定されたままになります。Interface Builder でレイアウトする場合は、次のように設定します。

ビュー 1 の自動サイズ変更

ビュー 2 を に設定autoresizingMaskしますUIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight。これにより、すべてのエッジがスーパービューに対して固定されたままになり、スーパービューのサイズの変更と同期して高さ/短さ (および幅/狭さ) が変わります。Interface Builder でレイアウトする場合は、次のように設定します。

ビュー 2 の自動サイズ変更

それらの間に 10 ポイントのスペースを入れて配置するのはあなた次第です。それを行い、説明したように自動サイズ変更マスクを設定すると、スーパービューのサイズが変更されたときに、マスクは自動的に 10 ポイントのスペースを維持します。

于 2013-07-10T22:44:04.323 に答える