如何在操作栏上垂直分割图像按钮

时间:2013-09-19 03:33:15

标签: android android-layout

我制作了一个自定义主题,以在操作栏上显示我的图像按钮。我想知道如何在android中垂直居中这些按钮。

到目前为止我写的代码。

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal" >

    <ImageButton
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="top|left|center_vertical"
        android:background="@drawable/groups" />

    <ImageButton
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="top|center|fill_vertical"
        android:background="@drawable/contactlist" />

    <ImageButton
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="top|right|center_vertical"
        android:background="@drawable/favourites" />

</FrameLayout>

这就是我想要的

enter image description here

3 个答案:

答案 0 :(得分:0)

您可以将图像按钮放在LinearLayout垂直方向内,然后将其重力设置为android:layout_gravity="center"

答案 1 :(得分:0)

// try this
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal" >

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
        <LinearLayout
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:background="@android:color/holo_blue_dark"
            android:padding="5dp"
            android:layout_weight="1">

            <ImageButton
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/groups" />

        </LinearLayout>
        <View
            android:layout_width="1dp"
            android:layout_height="match_parent"
            android:background="@android:color/white"/>
        <LinearLayout
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:background="@android:color/holo_blue_dark"
            android:padding="5dp"
            android:layout_weight="1">

            <ImageButton
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/contactlist" />

        </LinearLayout>
        <View
            android:layout_width="1dp"
            android:layout_height="match_parent"
            android:background="@android:color/white"/>
        <LinearLayout
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:background="@android:color/holo_blue_dark"
            android:padding="5dp"
            android:layout_weight="1">

            <ImageButton
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/favourites" />

        </LinearLayout>
    </LinearLayout>
</FrameLayout>

答案 2 :(得分:0)

请遵循此代码。

<?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="match_parent"
    android:orientation="horizontal" >

    <ImageButton
        android:layout_width="0dip"
        android:layout_height="50dip"
        android:layout_gravity="top|left|center_vertical"
        android:layout_weight="1"
        android:background="#FE6602" />

    <ImageButton
        android:layout_width="0dip"
        android:layout_height="50dip"
        android:layout_gravity="top|center|fill_vertical"
        android:layout_weight="1"
        android:background="#DBEAF9" />

    <ImageButton
        android:layout_width="0dip"
        android:layout_height="50dip"
        android:layout_gravity="top|right|center_vertical"
        android:layout_weight="1"
        android:background="#FAF2B0" />

</LinearLayout>

<强>的变化:

android:layout_height="50dip" to  android:layout_height="wrap_content"

android:background="#FE6602" to android:background="@drawable/contactlist"

我只是简单的颜色和静态尺寸或测试目的就像魅力一样。