如何设置android中的按钮宽度来覆盖屏幕宽度?

时间:2010-03-01 09:10:38

标签: android layout

朋友,

我有三个线性布局按钮,宽度为fill_parent

现在如何设置这些按钮的宽度以平均覆盖整个屏幕区域?

任何帮助都会得到满足。

<Button 
   android:layout_width="wrap_content" 
   android:layout_height="wrap_content" 
   android:id="@+id/btnReplyMessage" 
   android:gravity="left"
   android:text="Reply" 
/>

<Button 
   android:layout_width="wrap_content" 
   android:layout_height="wrap_content" 
   android:id="@+id/btnMarkAsUnread"
   android:gravity="left" 
   android:text="Mark as unread" 
/>

<ImageButton 
   android:id="@+id/btnDeleteMessage"
   android:src="@drawable/imgsearch"
   android:gravity="right" 
   android:layout_height="wrap_content"
   android:layout_width="wrap_content"
   android:layout_alignParentRight="true"
 />

3 个答案:

答案 0 :(得分:35)

为所有按钮提供以下属性

android:layout_width="fill_parent"
android:layout_weight="1"

fill_parent告诉他们消耗尽可能宽的宽度,weight确定当多个控件竞争相同的空间时,该宽度应如何分配。 (尝试为每个按钮使用不同的weight值来查看其工作原理)

答案 1 :(得分:7)

您应该为每个按钮指定这些属性:

android:layout_width="fill_parent"
android:layout_weight="1"

所以它应该是这样的:

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

答案 2 :(得分:2)

您可以使用以下代码:

  <Button
  android:layout_width="0dp"
  android:layout_height="wrap_content"
  android:layout_weight="1"/>

每个按钮的宽度必须为0dp。