ImageButton背景颜色将按钮向上移动?

时间:2014-03-01 12:38:38

标签: android android-layout

我正在尝试将ImageButton的背景颜色设置为黑色,但由于某种原因它会将整个图像移动。也就是说,没有背景颜色,它看起来像:

enter image description here

设置背景颜色,如下所示:

enter image description here

这是我的布局:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
            android:orientation="horizontal"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
    android:paddingLeft="6dp"
    android:paddingRight="6dp">


<FrameLayout android:layout_width="0dp"
             android:layout_height="wrap_content"
             android:layout_weight="1">
    <ImageButton
            android:id="@+id/button02"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:src="@drawable/chat_button"
            />
    <TextView android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:layout_gravity="center"
              android:textColor="@color/secondary_string"
              android:textSize="10dp"
              android:text="5"/>
</FrameLayout>

<Button
        android:id="@+id/button03"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"

        />
</LinearLayout>

如果ImageButton被包装在FrameLayout中,似乎就是这种情况。

谢谢!

1 个答案:

答案 0 :(得分:0)

在第一个示例中,background是默认的drawable资源,因此它有一些基本规则(默认大小)。

您应手动指定按钮高度,如:

  <ImageButton
            android:id="@+id/button02"
            android:layout_width="fill_parent"
            android:layout_height="30dp"
            android:gravity="center"
            android:src="@drawable/chat_button"
            />

或设置高度以匹配父像:

android:layout_height="fill_parent"