我将此作为我在我的应用中使用的不同Views
的背景:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/list_pressed_holo_light"
android:state_pressed="true" />
<item android:drawable="@drawable/listitem_border" />
</selector>
这适用于所有类型的列表项,但当我在GoogleMap
上方时,它在按下时显示为透明:
我尝试将其放在具有白色背景的布局中,但这令人惊讶地导致全白View
。如何在压制状态下拥有坚实的“全蓝”背景?
编辑:这是图片中显示的视图的XML(左下角):
<LinearLayout
android:id="@+id/container"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="80dp"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:background="@drawable/listitem_bg"
android:clickable="true"
android:orientation="horizontal"
android:padding="15dp"
android:visibility="invisible" >
<ImageView
android:id="@+id/iv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="30dp"
android:orientation="vertical" >
<TextView
android:id="@+id/desc"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hallo" />
<TextView
android:id="@+id/zipcity"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hallo" />
</LinearLayout>
</LinearLayout>
这是我试图拥有一个坚实的bg:
<LinearLayout
android:id="@+id/container"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:background="#ffffff"
android:layout_alignParentLeft="true"
android:layout_marginRight="80dp"
android:orientation="vertical" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/listitem_bg"
android:clickable="true"
android:orientation="horizontal"
android:padding="15dp"
android:visibility="invisible" >
<ImageView
android:id="@+id/iv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="30dp"
android:orientation="vertical" >
<TextView
android:id="@+id/desc"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/zipcity"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hallo" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
答案 0 :(得分:0)
如果不想愚蠢,如何将它放在具有纯黑色背景的布局中?
答案 1 :(得分:0)
尝试在选择器中添加另一项用于聚焦状态:
<item android:drawable="@drawable/list_pressed_holo_light"
android:state_focused="true" />
state_pressed
state_focused
。或者如果项目在触摸模式下可聚焦
我总是使用两种状态 - 只有在定义了两种状态时才适用于我。工作示例是here
同时确保你的@drawable
都是正确的