Android 在ListView中设置选定节点的背景
我有一个水平列表视图,它以文件夹的形式显示一些项目。单击这些项目将打开该节点的子节点。我想设置所选节点的背景。我可以在Adapter类中使用以下代码执行此操作:Android 在ListView中设置选定节点的背景,android,android-listview,Android,Android Listview,我有一个水平列表视图,它以文件夹的形式显示一些项目。单击这些项目将打开该节点的子节点。我想设置所选节点的背景。我可以在Adapter类中使用以下代码执行此操作: public void bindView(View view, Context context, Cursor cursor) { this.cursorPosition = cursor.getPosition(); if (this.cursorPosition == selectedPosition) {
public void bindView(View view, Context context, Cursor cursor) {
this.cursorPosition = cursor.getPosition();
if (this.cursorPosition == selectedPosition) {
holder.title.setBackgroundResource(R.color.toc_selected);
}
}
此处selectedPosition
是所选项目的位置,我将其设置在不同的位置
如果单击项目后向左/向右滑动项目,此代码将失败。ListView
显示8个项目,其值为cursor.getPosition()
为0,1,2,…,7
。如果我们滑动列表视图
,第9个元素的值将为cursor.getPosition()
为0,第10个元素的值为1,依此类推。因此,如果我们选择第一个节点,那么它将在列表视图中选择第一个和第九个节点。在滑动视图时,位置会更新。此外,如果我们选择第9个项目,则也将选择第1个项目,因为第1个和第9个节点的getPosition相同,即0
有没有办法摆脱这种情况?发布横向列表的详细代码view@user603125该代码非常大(400行),不能在这里发布