0

画面サイズに関係なく、レイアウトを画面の右側に配置したい場合は、どうすればよいか知りたいです。

左側に重み1の空の要素を配置する必要がありますか?または、レイアウトがその親の右側に整列し、一定の割合を占めるように指定することは可能ですか?もしそうなら...どうやって?親はRelativeLayoutであることが理想的ですが、現在、私が試したすべてのソリューションが完全に間違った結果をもたらす原因となるソリューションを使用します。

4

2 に答える 2

3

私の知る限り、唯一の解決策は加重を設定することLinearLayoutです。ビューの重みをレイアウトのweightSumで割った値は、画面上の空き領域の割合を表します。

それぞれの幅が0dpに設定され、重みが1に設定された2つの子ビューを持つようにすることができます。

加重レイアウトは2つのフェーズで機能します。最初のフェーズではlayout_width、各ビューのを測定します。layout_weight2番目のフェーズでは、 /weightSum関係に関する残りのスペース(合計レイアウト幅-各ビューの幅の累積合計)を分配します。

于 2012-05-19T02:31:32.007 に答える
1

要素をいずれかの側に揃えるには、その親要素(おそらく要素を含むレイアウト)の重力を設定する必要があります。もちろん、あなたの場合、線形レイアウトの「重力」属性をに設定します。レイアウトの「向き」水平に変更する必要がある場合もあります

画面の半分だけを占めるようにするには、親レイアウトの「重みの合計」と子の「レイアウトの重み」を設定します。子の重みの合計は、親の重みの合計と等しくなければなりません。

于 2012-05-19T02:48:54.943 に答える