【发布时间】:2021-06-07 07:27:03
【问题描述】:
我有一个列表,我想允许用户使用长按删除一个项目并在单击时进行编辑。
问题是,如果用户想删除一个项目(长按该项目),我的应用程序将打开删除确认消息以及编辑确认。
知道如何在用户长按列表项时仅打开删除 (setOnItemLongClickListener) 消息吗?
// DELETE
list.setOnItemLongClickListener((parent, view, position, arg3) -> {
Contacts contacts = queue.get(position);
AlertDialog.Builder adb=new AlertDialog.Builder(Read.this);
adb.setTitle("Delete?");
adb.setMessage("Are you sure you want to delete?");
adb.setNegativeButton("Cancel", null);
adb.setPositiveButton("Ok", (dialog, which) -> {
deleteContact(Read.this, contacts.phone, contacts.name);
mobileArray.remove(position);
adapter.notifyDataSetChanged();
});
adb.show();
return false;
});
// EDIT
list.setOnItemClickListener((parent, view, position, arg3) -> {
Contacts contacts = queue.get(position);
AlertDialog.Builder adb=new AlertDialog.Builder(Read.this);
adb.setTitle("Edit?");
adb.setMessage("Edit?");
adb.setNegativeButton("Cancel", null);
adb.setPositiveButton("Ok", (dialog, which) -> {
Log.d("edit:", contacts.name + contacts.id + contacts.phone + contacts.email);
});
adb.show();
});
【问题讨论】:
-
只要把return改成true(sourcedeveloper.android.com/reference/android/widget/…)
-
@Ikazuchi 哦,它似乎有效。谢谢你的回答。
标签: java android android-listview