我希望我的列表项保持其按下/选择状态,直到我按下列表上的其他项目。键入此内容时,我认为我希望它像 RadioButtons 一样工作,而没有圆形按钮。我尝试将列表项的选中/按下状态设置为 true,或者将其背景颜色设置为开启,onListItemClick
但是当我这样做时,即使在单击其他项后,我的列表项仍保持单击状态。如何取消设置列表中先前单击的项目的背景颜色?或者有其他方法可以做到这一点?
问问题
1243 次
1 回答
0
尝试这个
第 1 步:尝试使用 for loop in 将背景颜色(即您的原始背景颜色)重置为所有列表项onItemClickListener()
。
第2步:为选定的一个设置不同的背景颜色。
如果您使用自定义列表视图,那么这将非常容易。
编辑自定义列表视图教程
视频 - youtubeVideo
希望能帮助到你
编辑
这就是我所做的:我遍历可见列表以将每个项目的背景设置为透明,将所选项目的背景设置为不同的颜色。这样,颜色会一直保持到我按下另一个项目。
protected void onListItemClick(ListView l, View v, int position, long id) { int childCount = l.getChildCount();
for (int i = 0; i < childCount; i++)
{
View listItem = l.getChildAt(i);
if(listItem != null ) listItem.setBackgroundColor(0x00000000);
}
v.setBackgroundColor(getResources().getColor(R.color.pressed));
...
}
于 2012-07-22T14:31:33.400 回答