自動サイズ変更マスクを使用するときにサブビューが希望どおりに動作するようにビューを設計する際に問題が発生しました(たとえば、ステータスバーのサイズが変更された場合、電話をホットスポットとして使用した場合など)。間違いなく読むべき良いドキュメントはありますか?Appleのドキュメントは、少なくとも私自身の厳しいテストなしでは役に立たないようです。
3 に答える
これは、ドキュメントや試行錯誤から理解するのが少し複雑な種類のものですが、理解すると、そもそもなぜそんなに混乱していたのか不思議に思うでしょう. 私は...するだろう:
- ビュー プログラミング ガイドの「自動サイズ変更ルールを使用してレイアウト変更を自動的に処理する」を参照してください。
- Interface Builder の Size インスペクターで、スプリングとストラットをいじってみましょう。ボックスの中に水平バネを入れることは、設定
UIViewAutoresizingFlexibleWidth
と同じです (高さについても同様です)。ボックスの上にストラットを配置することは、UIViewAutoresizingFlexibleTopMargin
オフにすることと同じです (下、左、および右のマージンについても同様です)。
を に設定するautoresizingMask
ことUIViewAutoresizingFlexibleWidth
は、幅のスプリングに Interface Builder の左右両方の支柱を設定することと同じです (支柱は、エッジが柔軟でないことを意味します)。左右のストラットではなく、幅のスプリングのみを設定する動作を再現したい場合は、|に設定autoresizingMask
する必要があります。| |UIViewAutoresizingFlexibleWidth
UIViewAutoresizingFlexibleLeftMargin
UIViewAutoresizingFlexibleRightMargin
この URL も参照してください - http://www.techotopia.com/index.php/IOS_4_iPhone_Rotation,_View_Resizing_and_Layout_Handling
から取得 - UIView 自動サイズ変更リソース
Interface Builderの「サイズインスペクタ」をタップすると、必要な自動サイズ変更マスクを選択できます。また、小さな正方形の画面では、自動サイズ変更を使用してアニメーションが表示されるため、設定したオプションを確認できます。