2011-11-29 64 views
1

在我的程序中,我使用了onclick事件的警報對話框。但是,在事件onclick上運行我的程序後,警報對話框打開並允許在其中填充信息。然後點擊確定按鈕提示對話框如果條件匹配比數據將提交和意圖將通過其他方式在吐司味精它會顯示像輸入正確的密碼或登錄ID等,但當第二次點擊我已經設置的按鈕alertdialogbox線程msg將出現,它會關閉程序,所以這是什麼解決方案。如何第二次打開警報對話框而無需第二次運行程序?

希望您的關注。 感謝你

+0

您可以添加LogCat輸出嗎? –

+0

AlertDialog需要一個在後臺運行的活動,它將顯示在後臺並保持活動狀態。所以你可以發佈你的代碼片段,以便我們可以找到一個更好的解決方案,如果你不介意你的問題。 –

回答

0

經過覆蓋的方法

  • OnCreateDialog()
  • OnPrepareDialog()

編號:http://developer.android.com/guide/topics/ui/dialogs.html

只是一個想法

@Override 
     protected Dialog onCreateDialog(int id) { 
      switch (id) { 
      case DataMember.DIALOG_ALERT: 
       return new AlertDialog.Builder(this) 
         .setCancelable(false) 
         .setMessage("") 
         .setPositiveButton("Ok", 
           new DialogInterface.OnClickListener() { 
            public void onClick(DialogInterface dialog, 
              int id) { 
             //do your code 
//if() { call intent} else {do nothing} 

            } 
           }).create(); 
    } 
    } 
0

點擊正面或負面的按鈕,最終導致關閉dialog.So絕招你可以做的是:

  1. 準備打開對話框

    公共無效openDialog(){

    的方法
    // code to open dialog 
    

    }

  2. 調用該方法,你檢查coditi在

    公共無效openDialog(){

    // code to open dialog 
    
        ... 
    
        //in button click{ 
    
        if(codition matches) 
          //do something and close the dialog 
        else 
          openDialog(); //that will reopen the dialog 
        }  
    

    }