我的应用上有2个按钮,当前放置如下所示:
我更改了我的xml,以便将height属性设置为'0dp',并将权重设置为'1。这给了我正确的相等间距,但按钮现在展开以填充这个空间,如图所示:
如何修改布局以便实现所需的布局? (注意:我在绘画中创建了这个布局)
当前的XML布局:
Here is my current XML code:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="84dp"
android:orientation="horizontal" >
<ImageView
android:id="@+id/imgLink"
android:layout_width="78dp"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:src="@drawable/appointmentmanimenuicon" />
<TextView
android:id="@+id/textView1"
android:layout_width="match_parent"
android:layout_height="75dp"
android:gravity="center"
android:text="Appointments"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textSize="30sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="400dp"
android:orientation="vertical" >
<Button
android:id="@+id/btnaddAppoint"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_margin="20dp"
android:drawableLeft="@drawable/appointmentmenu"
android:src="@drawable/appointmentmenu"
android:text="Add Appointment"
android:layout_weight="1" />
<Button
android:id="@+id/btnviewAppoint"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_margin="20dp"
android:drawableLeft="@drawable/appointviewicon"
android:src="@drawable/appointviewicon"
android:text="View Appointments"
android:layout_weight="1" />
</LinearLayout>
</LinearLayout>
答案 0 :(得分:0)
您可以使用layout_height =“yourvalue”为布局提供所需的高度,并使用layout_margin =“yourvalue”安排间距...
答案 1 :(得分:0)
一个相当简单的解决方案是使用“虚拟”视图在按钮之间创建所需的间距。然后,您可以通过调整不同的权重来调整间距。也可以摆脱包裹两个按钮的LinearLayout
- 通常没有必要以相同的方向嵌套多个LinearLayouts。
尝试使用以下两个按钮替换LinearLayout
:
<View
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_weight="1" />
<Button
android:id="@+id/btnaddAppoint"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:drawableLeft="@drawable/appointmentmenu"
android:src="@drawable/appointmentmenu"
android:text="Add Appointment" />
<View
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_weight="1" />
<Button
android:id="@+id/btnviewAppoint"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:drawableLeft="@drawable/appointviewicon"
android:src="@drawable/appointviewicon"
android:text="View Appointments" />
<View
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_weight="1" />