视图占据布局的相同份额

时间:2012-02-18 06:04:33

标签: android android-layout

我创建了一个包含2个按钮的自定义对话框构建器。

根据对话框的设置,我可以选择使用Window.GONE完全隐藏其中一个按钮。

理想情况下,我想要发生的是: 1.如果只有一个按钮,则用它填充布局 2.如果有两个按钮,则用这些

平均分割布局中的空格

是否可以在不必计算对话框的宽度,按钮数量然后手动设置尺寸的情况下执行此操作? 我希望可能有一种更简洁的方式来执行此操作

2 个答案:

答案 0 :(得分: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)

是的当然把你的观点意味着按钮处于线性布局并给予yor按钮相等layout_weight将解决你的问题。