我正在尝试将ImageButton的背景颜色设置为黑色,但由于某种原因它会将整个图像移动。也就是说,没有背景颜色,它看起来像:
设置背景颜色,如下所示:
这是我的布局:
<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中,似乎就是这种情况。
谢谢!
答案 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"