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函数。
我该如何做到这一点?
答案 0 :(得分:1)
如果您的条件为假,您可以尝试使用:setOnLongClickListener(null)
,否则是您定义的听众。
答案 1 :(得分:0)
什么问题无法理解......
顺便说一句,你可以在if循环中设置longclicklistener ......
if loop(true)
set on longclickListener
否则 没什么....