我想选择一行ListView
。我已经尝试了一切,但似乎没有任何工作。
onCreate
方法ListView
setSelection
通过position
方法setSelection(index)
有效,但我无法选择该项目。怎么做?我也试过使用requestFocus()
,但它没有用。
答案 0 :(得分:0)
您的ListView
需要一个selector,StateListDrawable
,state_selected
可绘制。否则,选中时项目不会改变颜色。
答案 1 :(得分:0)
您需要为此创建选择器项目,您必须使用setSelector()调用将此项目设置为listview。
创建一个新的可绘制文件,并使用类似的代码,如下所示。
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="false"><shape>
<gradient android:angle="270" android:endColor="#BB00D5FF" android:startColor="#BB00D5FF" />
<corners android:bottomLeftRadius="9dp" android:topRightRadius="9dp" />
</shape></item>
<item android:state_pressed="true"><shape>
<gradient android:angle="270" android:endColor="#BB0987CD" android:startColor="#BB0987CD" />
<corners android:bottomLeftRadius="9dp" android:topRightRadius="9dp" />
</shape></item>
</selector>
使用setSelector(R.drawable.bg)将上述drawable设置为listview