2012-02-18 11 views
1

私は2つのボタンを含むカスタムダイアログビルダを作成しました。レイアウトの均等な見解を持つビュー

ダイアログの設定によっては、Window.GONEを使用してボタンの1つを完全に非表示にすることがあります。理想的には私が起こるしたいもの

は次のとおりです。 1つのみのボタンがある場合は、それにレイアウトを埋める 2つのボタンがある場合、これらの

と同じように、レイアウトのスペースを分割

ダイアログの幅、ボタンの数を調整して手動でサイズを設定せずにこれを行うことは可能ですか?私はここで、[OK]この

答えて

2

を実行するための滑らかな印象の方法があるかもしれません期待していた は、私はそれを行うだろうかです:

<LinearLayout layout_width:fill_parent layout_height:wrap_content> 

    <Button 
     layout_width=fill_parent 
     layout_height=wrap_content 
     layout_weight=1/> 
    <Button 
     layout_width=fill_parent 
     layout_height=wrap_content 
     layout_weight=1/> 
</LinearLayout> 

トリックは、両方の要素にfill_parentの幅と1の重みを置くことです両方とも描画されている場合は、それぞれ画面の半分を占めます。 View.Goneを使用すると、そのうちの1つが消え、もう1つはすべての領域を占有します。

+0

優秀、ありがとう、私は体重の属性を知らなかった – DJ180

+0

体重は興味深い属性です。あなたが望むどんな値でも、彼らが相対的である限り行うことができます。私は整数が好きなので、1で始まりますが、両方の重みが0.5または500の場合、同じであれば同じ結果が得られます。 – edthethird

1

はい、あなたのビューはリニアレイアウトのボタンを意味し、yorボタンはlayout_weightと等しくて問題を解決します。

関連する問題