我按照官方Android网站的教程创建了上下文操作菜单.使用下面的代码,当我长按其中一个ListView项目时,它会被选中,但它不会直观地表明它已被选中.我正在使用Holo Light主题,我希望ListView中每个所选项目的背景颜色变为蓝色.
这是正常的行为吗?
我已经尝试过测试listView.setChoiceMode(ListView.CHOICE_MODE_SINGLE);,甚至没有一行会突出显示.
使用listView.setSelector(android.R.color.holo_blue_light);似乎突出显示上次选择的行,但它不突出显示所选的其他行.
我做错了什么,或者我是否需要手动进行背景更改?如果是这样,怎么样?
我也试过listView.setSelector(android.R.drawable.list_selector_background);这是一个真正的选择器,包含不同状态的项目.不幸的是,它仍然只适用于最近选择的ListView项目.
public class MyActivity extends ListActivity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// The list is generated here
ListView listView = getListView();
listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE_MODAL);
listView.setMultiChoiceModeListener(new MultiChoiceModeListener() {
// implements empty methods
}
}
}
Run Code Online (Sandbox Code Playgroud)
谢谢!