我试图默认突出显示listview中的位置。
这是代码: 我的列表视图声明:
<ListView
android:id="@+id/list"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
物品清单声明
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<TextView
android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="10dip"
android:textSize="20sp"
android:textStyle="bold" />
</LinearLayout>
在我的自定义选择器中,我有:
<item
android:drawable="@android:color/holo_green_light"
android:state_selected="true"/>
现在我想在列表视图中默认使用绿色标记。 Java代码:
listview.setSelector(R.drawable.listselector);
listview.setSelection(20);
但所选元素未以绿色突出显示。我尝试了很多提出的解决方案,但没有任何效果。 有任何想法吗? 提前谢谢。
答案 0 :(得分:1)
尝试在ListView
XML:
<ListView
android:id="@+id/list"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:listSelector="@drawable/listselector"
/>
另外,像这样定义选择器item
:
android:background="@android:color/holo_green_light"
而不是android:drawable
。
答案 1 :(得分:1)
为我工作:)