2

Height+Top または Height+BottomUIViewを持つの自動サイズ変更動作は何ですか? UIViewAutoresizingこれは理にかなっていますか?マージンの 1 つまたはビュー自体が優先されますか? 誤ってビューUIViewAutoresizingを に設定したことを発見したところ、親のサイズが変更さUIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleTopMarginれたときにビューのサイズが高さに変更されました。0

4

2 に答える 2

10

自動サイズ変更の仕組みは次のとおりです。

親ビューの高さが 400 で、ビューが y = 100、高さ = 200 に設定されているとします。

つまり、ビューの上に 100 ピクセル、ビューに 200 ピクセル、ビューの下に 100 ピクセルがあります。

flexibleHeight と flexibleTop を使用すると、親ビュー フレームが変更されたときに、下の 100 ピクセルを固定したままにし、残りを上余白と高さの間で比例的に分割することを意味します。

したがって、親の高さを 400 から 300 にすると、下余白に 100 が使用され、残りの 200 が比例して分割され、y = 66.666 と高さ = 133.333 が残ります。

高さを 400 から 100 に変更しても、下余白には 100 が使用され、上余白と高さには 0 のスペースが残され、y = 0、高さ = 0 のままになります。

于 2012-08-29T20:31:58.703 に答える
1

UIViewAutoresizingFlexibleTopMargin親ビューのサイズが変更されたときに下マージンを変更せずにUIViewAutoresizingFlexibleHeight、残りの高さの親の高さに比例して高さを変更します。

の使用はあまり見られませんUIViewAutoresizingFlexibleHeightUIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleWidthただし、デバイスの向きに関係なく一定の高さで親ビューの下部に固定するテキストを含むビューを取得するために使用しました。

于 2012-08-29T21:00:47.963 に答える