我有一个布局,我希望两个ToggleButton小部件水平居中;不是彼此相邻,而是好像每个人都在他们自己的一半视图中。
以下是我的布局代码:
`<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<LinearLayout android:id="@+id/pics"
android:layout_weight="2"
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:padding="8dp"
android:layout_alignParentTop="true" >
<ImageView android:id="@+id/prefix"
android:layout_weight="1"
android:layout_height="fill_parent"
android:layout_width="wrap_content"
android:padding="4dp"/>
<ImageView android:id="@+id/suffix"
android:layout_weight="1"
android:layout_height="fill_parent"
android:layout_width="wrap_content"
android:padding="4dp" />
</LinearLayout>
<LinearLayout android:layout_width="fill_parent"
android:layout_height="wrap_content"
orientation="horizontal" >
<LinearLayout android:layout_weight="1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
orientation="horizontal" >
<ToggleButton android:id="@+id/lockPrefix"
android:textOn="Locked"
android:textOff="Unlocked"
android:checked="false"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal" />
</LinearLayout>
<LinearLayout android:layout_weight="1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
orientation="horizontal" >
<ToggleButton android:id="@+id/lockSuffix"
android:textOn="Locked"
android:textOff="Unlocked"
android:checked="false"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal" />
</LinearLayout>
</LinearLayout>
<LinearLayout android:id="@+id/toolbar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_below="@id/pics"
android:padding="8dp" >
<Button android:id="@+id/mixButton"
style="@style/DefaultButton"
android:layout_height="wrap_content"
android:layout_width="90dp"
android:text="@string/main_mixButton"
android:onClick="mixButtonClick" />
<Button android:id="@+id/exitButton"
style="@style/DefaultButton"
android:layout_height="wrap_content"
android:layout_width="90dp"
android:text="@string/main_exitButton"
android:onClick="exitButtonClick" />
</LinearLayout>
</LinearLayout>`
(编辑:使XML可读)
答案 0 :(得分:2)
您需要将每个按钮放入LinearLayout
,将这些布局的layout_width
设置为fill_parent
,layout_weight
设置为1,将gravity
设置为{{1} }}。希望这有帮助!
答案 1 :(得分:0)
尝试此操作,切换按钮,删除嵌套的线性布局。 (我想从第24行取代)
<LinearLayout android:layout_width="fill_parent" android:layout_height="wrap_content" orientation="horizontal" android:layout_weight="1" > <ToggleButton android:id="@+id/lockPrefix" android:textOn="Locked" android:textOff="Unlocked" android:checked="false" android:layout_width="0dip" android:layout_weight="0.5" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" /> <ToggleButton android:id="@+id/lockSuffix" android:textOn="Locked" android:textOff="Unlocked" android:checked="false" android:layout_width="0dip" android:layout_weight="0.5" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" /> < /LinearLayout>