我正在尝试在Android上使用OnItemLongClickListener作为listView。添加到onCreate方法时,此代码可以正常工作。
mContactList.setOnItemLongClickListener(new OnItemLongClickListener() {
public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
Log.e("MyApp", "get onItem Click position= " + position);
return false;
}
});
但是,当我尝试实现OnItemLongClickListener接口并在类中使用此方法时:
@Override
public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
Log.e("MyApp", "get onItem Click position= " + position);
return false;
}
没有任何反应。我错过了什么?
答案 0 :(得分:5)
您是否将对象注册为侦听器,例如。 setOnItemLongClickListener(this)
?
答案 1 :(得分:3)
您始终必须设置setOnItemLongClickListener。 如果将onClick侦听器解压缩到另一个类,则必须将此OnItemLongClickListener设置为listview。
e.g。
mContactList.setOnItemLongClickListener(new MyClassOnLogItemClickListener());
或如果您在同一个班级,请使用this
注册。