我的布局中有两个按钮(购买和分享),我希望它们占据相同的空间。但是,“分享”按钮比“购买”按钮占用更多的空间。任何人都可以指出我的错误吗?感谢。
<Button
android:id="@+id/shareButton"
android:text="Share"
android:background="@drawable/ebutton"
android:layout_width="wrap_content"
android:layout_height="50px"
android:paddingTop="10dip"
android:paddingBottom="10dip"
android:paddingLeft="10dip"
android:paddingRight="10dip"
android:layout_alignParentBottom="true"
>
</Button>
<Button
android:id="@+id/buyButton"
android:layout_toRightOf="@+id/shareButton"
android:text="Buy"
android:background="@drawable/ebutton"
android:layout_width="wrap_content"
android:layout_height="50px"
android:paddingTop="10dip"
android:paddingBottom="10dip"
android:paddingLeft="10dip"
android:paddingRight="10dip"
android:layout_alignParentBottom="true"
>
</Button>
答案 0 :(得分:2)
将两个按钮放在LinearLayout中,并为LinearLayout定义weightSum
为2,然后将每个按钮的weight
设置为1,两个视图将缩放以占据父级的一半。
<LinearLayout android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:weightSum="2">
<Button android:id="@+id/buyBtn"
android:layout_weight="1"
android:layout_width="0dp"
android:layout_height="fill_parent"
android:text="Buy"/>
<Button android:id="@+id/shareBtn"
android:layout_weight="1"
android:layout_width="0dp"
android:layout_height="fill_parent"
android:text="Share"/>
</LinearLayout>
这是一种非常强大的布局技术,因为您可以定义视图应占用的父级的一部分。例如,如果您想要3个按钮,其中第一个占据屏幕的一半而另外两个占据四分之一,则可以将父weightSum
设置为4,将第一个的weight
设置为2和{{ 1}}其他两个按钮为1。