如何更改android中列表项的长按背景颜色,现在我可以使用下面的代码获取列表项的位置onlongclick。
listView.setOnItemLongClickListener(new OnItemLongClickListener() {
public boolean onItemLongClick(AdapterView<?> arg0, View arg1,
int pos, long id) {
// TODO Auto-generated method stub
Log.v("long clicked","pos: " + pos);
return true;
}
});
任何帮助都会受到赞赏,谢谢
答案 0 :(得分:3)
我在这篇文章中找到了一个可能的解决方案:Changing background color of ListView items on Android
private static int save = -1;
public void onListItemClick(ListView parent, View v, int position, long id) {
parent.getChildAt(position).setBackgroundColor(Color.BLUE);
if (save != -1 && save != position){
parent.getChildAt(save).setBackgroundColor(Color.BLACK);
}
save = position;
}
将方法更改为onItemLongClick()。
我希望这有帮助!
答案 1 :(得分:2)
试试这个,
listView.setOnItemLongClickListener(new OnItemLongClickListener() {
@Override
public boolean onItemLongClick(AdapterView<?> arg0, View view,
int arg2, long arg3) {
view.setBackgroundColor(Color.parseColor("#222222"));
Log.v("Long Click", "Working");
return false;
}
});
答案 2 :(得分:0)
在onItemLongClick()
public View view1;// should be declared as global
if (view1 != null) {
view1.setBackgroundResource(R.color.orange);
}
view1 = v;
v.setBackgroundResource(R.color.transparent_green);