2014-12-15 5 views
1

알림 대화 상자를 사용하여 사용자에게 메시지를 표시하고 있지만 확인 버튼을 누르면 대화 상자가 다시 표시됩니다. 두 번째로 확인 버튼을 누르면 대화 상자가 사라집니다.팝업 대화 상자가 android에 두 번 표시됩니다.

여기 내 코드입니다 :

if(Integer.parseInt(hours) < 0 || Integer.parseInt(minutes) < 0) 
     { 
      new AlertDialog.Builder(this) 
      .setTitle("Warning") 
      .setMessage("The ending time cannot be earlier than the start time!") 
      .setCancelable(true) 
      .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() { 
       public void onClick(DialogInterface dialog, int which) { 
        // continue with delete 
        dialog.cancel(); 
       } 
      }) 
      .setIcon(android.R.drawable.ic_dialog_alert) 
      .show(); 

     } 

편집 : 사용자가 시간 선택기를 사용하여 시작 시간보다 이전 (AN 글고 단위) 종료 시간을 채우는 경우 코드가 실행됩니다. 종료 시간에 대한 EditText의 unlock 이벤트에서 if 절이 호출됩니다./

왜 이런 일이 발생했는지 알 수 있습니까?

+1

이 코드를 어떻게 실행하나요? 더 많은 유익한 코드를 제공하십시오 – Nasir

+1

'dialog.dismiss();를 사용하십시오 – jyoon

+0

@jyoon 시도했으나 작동하지 않습니다. – Bouss

답변

1

실제로 경고 대화 상자를 표시하기 위해 코드 블록을 두 번 트리거합니다.

그래서 Alert Dialogue가 서로 위에 표시됩니다.

확인 버튼 클릭과 관련이 없습니다.

제공되는 코드 스 니펫에는 문제가 없습니다.

+0

if 절에서 사용 된 매개 변수 때문에 코드 블록이 실제로 두 번 트리거되었습니다. 이제 알림 대화 상자가 표시 될 때마다 값을 재설정합니다. 도와 주셔서 감사합니다! – Bouss

관련 문제