Java 如何在菜单图标上使用setOnClickListener
如何为菜单图标(删除)使用“单击时设置侦听器”功能。我在菜单中有删除图标。通过使用该选项,我希望删除所选事件 对于该任务,我必须使用setOnClickListener 我已尝试使用为菜单中的删除图标选择的项目。它无法正常工作。因此我不想使用该方法。我想在单击侦听器时在集合中尝试此功能Java 如何在菜单图标上使用setOnClickListener,java,android,Java,Android,如何为菜单图标(删除)使用“单击时设置侦听器”功能。我在菜单中有删除图标。通过使用该选项,我希望删除所选事件 对于该任务,我必须使用setOnClickListener 我已尝试使用为菜单中的删除图标选择的项目。它无法正常工作。因此我不想使用该方法。我想在单击侦听器时在集合中尝试此功能 @Override public boolean onOptionsItemSelected(MenuItem item) { // int Id = item.getItemId();
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// int Id = item.getItemId();
switch (item.getItemId()) {
case R.id.menu_cancel_event:
del();
eventMO.setIsDelete(1);
return true;
}
return super.onOptionsItemSelected(item);
}
private void del(){
SQLiteDatabase db = dbHelper.getWritableDatabase();
final long Id=eventMO.getEventId();
db.delete("event", "Event_ID" + " = ?", new String[] {String.valueOf(Id)});
db.close();
}
您必须重写方法
onoptions项select(MenuItem项)
像这样做吧。。。我希望您在自定义布局上创建一个关闭图像图标。你在夸大你所有的数据。在我的例子中,若用户按住几秒钟,那个么该图标将可见,若使用r选择那个关闭图标,那个么它将从数据库中删除。。代码在这里
holder.album_img.setOnLongClickListener(new OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
holder.rmv_img.setVisibility(View.VISIBLE);
return true;
}
});
当您单击删除图标时,代码在此处
holder.rmv_img.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
dbHelper = new DBHelper(context);
try {
SQLiteDatabase db = dbHelper.getWritableDatabase();
db.delete(User_Detail.TABLE_4, User_Detail.KEY_ID_ALBUM_IMAGE + " ='" + img_list.get(position).getId_() + "'", null);
img_list.remove(position);
notifyDataSetChanged();
popupWindow.dismiss();
holder.rmv_img.setVisibility(View.GONE);
} catch (Exception e) {
e.printStackTrace();
}
}
});
根据你修改。。。快乐编码:-)什么不起作用?你能说得具体点吗?在“更新事件”中,单击“删除”图标后,我还想单击“保存”按钮…我不想这样做。这就是为什么我说该按钮工作不正常…我需要的是,单击“删除”图标后,我应该返回事件列表,我不想单击任何其他按钮。你可以将此评论移到你的问题上吗。另外,我想看看你想要实现什么,因为这是处理物品点击事件的最佳方式。如果您在单击“删除”图标后告诉我更新事件中的确切内容,我想单击“保存”按钮也表示,我可以给你一个准确的答案。我已经使用创建事件窗口创建了一个事件。创建的事件将出现在事件仪表板中。通过单击事件列表中的特定事件,我可以更新该事件。我还可以删除该事件。单击要更新的事件时,它将转到创建窗口,我可以编辑该事件。若要更新该事件,我将在现有事件更改后提供“保存”按钮。若要删除特定事件,我还应单击该事件,它将转到“创建事件”选项卡,我在菜单中有删除图标。通过此操作,我可以从事件列表中删除该事件。单击该删除图标后,它应删除该事件并返回到事件列表仪表板。我的问题是使用上述代码。我选择了要删除的特定事件,单击“删除”图标后,它会转到“创建事件”,我也应该单击“保存”按钮(用于创建或更新事件)…单击“删除”图标后,它不会返回到事件仪表板。单击“仅保存”后,它仍在“创建场合”窗口中。单击“删除”图标后,我希望它直接返回到事件仪表板谢谢…这里rmv_img是图标名。holder是什么..我需要导入一些程序包以更正此错误。因为它显示了一个错误在Holder中,这是适配器claas,在其中我们使用ViewHolder类。。。所以holder是ViewHolder claas的实例。。如果我们正在从数据库执行任何更新或删除操作,那么我们应该在适配器claas中执行此操作。感谢您的回复谢谢您的回复