【发布时间】:2026-01-17 19:50:01
【问题描述】:
美好的一天!
我想知道为什么 onItemLongClick 不会更新 listview 中的视图项,但是当我使用 onItemClick 它按预期工作时,这是我的代码的 sn-p。抱歉,我忘记在该 sn-p 中添加 return 语句,但问题仍未解决。
private void updateView(int position) {
View v = listView.getChildAt(position -
listView.getFirstVisiblePosition());
ImageView tempImgView = (ImageView) v.findViewById(R.id.avatarIcon);
if (listView.isItemChecked(position)) {
tempImgView .setImageResource(R.drawable.ic_check_24dp);
} else {
tempImgView .setImageResource(R.drawable.ic_uncheck_24dp);
}
}
@Override
public void onItemClick(AdapterView<?> arg0, View view, int position,
long id) {
updateView(position);
return true;
}
@Override
public boolean onItemLongClick(AdapterView<?> arg0, View view, int position,
long id) {
updateView(position);
return true;
}
【问题讨论】:
-
发布 updateView()。
-
你的代码甚至无法编译。
-
您好,对不起,我忘了添加退货声明,但问题仍未解决。
标签: java android android-layout listview onlongclicklistener