我有这个自动生成的列表
<ListView
android:id="@android:id/list"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textIsSelectable="true"
android:longClickable="true"
android:onClick="onClick" />
并且调试器无法获取“android:onClick”方法,
我正在尝试获取“长按”的特定项目并将其删除,我的删除工作正常,我知道我需要获取
position = lv.getPositionForView(view);
(Object) getListAdapter().getItem(position);
但我不确定如何制作侦听器并将其附加到代码中以执行此操作。有任何想法吗?
我的 onCreate 方法中有这个:
final ListView lv = (ListView) findViewById(android.R.id.list);
lv.setOnLongClickListener( new View.OnLongClickListener() {
@ Override
public boolean onLongClick(View v) {
int position = lv.getPositionForView(v);
Log.d(TAG, "position in here: " + position);
if (getListAdapter().getCount() > 0) {
Encouragement encouragement = (Encouragement) getListAdapter().getItem(position);
datasource.deleteEncouragement(encouragement);
adapter.remove(encouragement);
adapter.notifyDataSetChanged();
}
return false;
}
});
但它没有到达 Log.d(TAG, "position in here: " + position);