objImageButton.setOnLongClickListener(new OnLongClickListener() {
public boolean onLongClick(View v) {
if(checkDiscrepancySubmitted(final_position))
{
// TODO Auto-generated method stub
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(FragmentActivity.this);
alertDialogBuilder
.setMessage("Do you wish to delete the logged defect ?")
.setCancelable(false)
.setPositiveButton("Yes",new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface dialog,int id)
{
int idButton=objImageButton.getId();
EditText objNewEditText=(EditText) findViewById(idButton);
objNewEditText.setTextColor(R.color.blue);
removeDefect(final_position,idButton,objNewEditText);
Toast.makeText(FragmentActivity.this, "Unsaved defects deleted.", Toast.LENGTH_SHORT).show();
}
})
.setNegativeButton("No",new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,int id) {
dialog.cancel();
}
});
AlertDialog alertDialog = alertDialogBuilder.create();
alertDialog.show();
return false;
}
return false;
}
});
ご覧のとおり、内部にonLongClick()
条件があります。この条件が真であることが判明した場合にのみ、onLongClick()が機能するはずです。基本的に、条件が真の場合にのみListener関数を呼び出すようにします。どうすればこれを行うことができますか?