Android ListView SetSelector问题

时间:2012-08-01 15:11:54

标签: android listview

我有一个像这样的代码创建的ListView:

ListView lv  = new ListView(this); 
lv.setId(GENERALLISTVIEWID);
lv.setBackgroundColor(0x333333); 
lv.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT));
lv.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
lv.setDivider(null);
lv.setDividerHeight(0);
lv.setSelector(R.drawable.mainselector);    

在我的 mainselector 中:

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:drawable="@color/orange" android:state_pressed="true"/>
    <item android:drawable="@color/white" android:state_selected="true"/>
</selector>

问题是,当我选择行时,单元格下方的整个列表视图会亮起橙色。为什么不是单排变成橙色?

1 个答案:

答案 0 :(得分:2)

好的,我已经解决了这个问题,我错误地将资源应用到我的整个ListView而不是我的ListView行。

现在很明显了。我已经将mainselector应用为我的ListView cell.xml的背景。