它使用函数OnItemLongClickListener,但在发布按钮时也运行OnItemClickListener。
lv_driver.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
@Override
public boolean onItemLongClick(AdapterView<?> adapterView, View view, int i, long l) {
builder = new AlertDialog.Builder(MyActivity.this);
builder.setTitle("Be carefull ");
builder.setMessage("Do you want to delete?");
builder.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
delData(i);
}
});
builder.setNegativeButton("No", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
dialogInterface.dismiss();
}
});
builder.show();
return false;
}
});
lv_driver.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
Toast.makeText(MyActivity.this, "OnItemclick show ",
Toast.LENGTH_SHORT).show();
}
});
}按住按钮时,显示对话框确认删除,但发布按钮时显示吐司中的文本"OnItemclick显示“。怎么修呢?
发布于 2018-09-17 19:11:51
只需return true;,而不是在setOnItemLongClickListener中返回false,它必须做到这一点
更改此
lv_driver.setOnItemLongClickListener(new
AdapterView.OnItemLongClickListener() {
@Override
public boolean onItemLongClick(AdapterView<?> adapterView, View view,
int i, long l) {
builder = new AlertDialog.Builder(MyActivity.this);
builder.setTitle("Be carefull ");
builder.setMessage("Do you want to delete?");
builder.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
delData(i);
}
});
builder.setNegativeButton("No", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
dialogInterface.dismiss();
}
});
builder.show();
return false;
}
});到此
lv_driver.setOnItemLongClickListener(new
AdapterView.OnItemLongClickListener() {
@Override
public boolean onItemLongClick(AdapterView<?> adapterView, View view,
int i, long l) {
builder = new AlertDialog.Builder(MyActivity.this);
builder.setTitle("Be carefull ");
builder.setMessage("Do you want to delete?");
builder.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
delData(i);
}
});
builder.setNegativeButton("No", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
dialogInterface.dismiss();
}
});
builder.show();
return true;
}
});https://stackoverflow.com/questions/52374256
复制相似问题