2011-03-03 17 views
0

我在主類中設置了Alert方法。那麼這就是所謂的一個onclick主類內等:不調用alert類的方法

alertbox.show(); 

我將需要一些警告對話框,以我的應用程序中設置驗證。

我有alertdialog代碼:

final AlertDialog.Builder alertbox = new AlertDialog.Builder(this); 
    alertDialog = new AlertDialog.Builder(this).create(); 
    alertbox.setTitle("Warning"); 
    alertbox.setMessage("Game May End"); 
    alertbox.setPositiveButton("CONTINUE", 
      new DialogInterface.OnClickListener() { 

       @Override 
       public void onClick(DialogInterface dialog, int which) { 
        setContentView(webview); 


       } 
      }); 

    alertbox.setNegativeButton("CANCEL", 
      new DialogInterface.OnClickListener() { 

       @Override 
       public void onClick(DialogInterface dialog, int which) { 

       } 
      }); 

    alertbox.setIcon(R.drawable.icon); 

其上的是我已經在主類,使該類太大頂部的幾個警告對話框。我想把班級分成一個主要的確認班。然後調用主類此警告對話框作爲

mainvalidation.alertbox.show(); 

是否有人可以幫助我。由於

編輯:

我試圖把它變成另一個類,並添加靜態。但它說,只有最後是允許alertbox顯示了一個錯誤,當我使用靜態:

 public class MainValidation extends Activity { 

    static AlertDialog alertbox; 
    static AlertDialog alertDialog; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     final static AlertDialog.Builder alertbox = new AlertDialog.Builder(this); 
      alertDialog = new AlertDialog.Builder(this).create(); 

     alertbox.setTitle("Warning"); 
     alertbox.setMessage("Game May End"); 
     alertbox.setPositiveButton("CONTINUE", 
       new DialogInterface.OnClickListener() { 

        @Override 
        public void onClick(DialogInterface dialog, int which) { 



        } 
       }); 

     alertbox.setNegativeButton("CANCEL", 
       new DialogInterface.OnClickListener() { 

        @Override 
        public void onClick(DialogInterface dialog, int which) { 

        } 
       }); 

     alertDialog.setIcon(R.drawable.icon); 


} 
} 

請幫幫忙,謝謝

回答

0

使用類似DialogTest的類。

顯示對話框:DialogTest.showDialog(ctx); // ctx是您從中調用的上下文。

關閉對話框:DialogTest.dismissDialog();

public class DialogTest 
{ 
    private static AlertDialog alertDialog; 

    public static void showDialog(Context ctx) 
    { 
     final AlertDialog.Builder alertbox = new AlertDialog.Builder(ctx); 
     alertbox.setTitle("Warning"); 
     alertbox.setMessage("Game May End"); 
     alertbox.setPositiveButton("CONTINUE", new DialogInterface.OnClickListener() 
     { 
      @Override 
      public void onClick(DialogInterface dialog, int which) 
      {} 
     }); 
     alertbox.setNegativeButton("CANCEL", new DialogInterface.OnClickListener() 
     { 
      @Override 
      public void onClick(DialogInterface dialog, int which) 
      {} 
     }); 
     alertDialog = alertbox.create(); 
     alertDialog.setIcon(R.drawable.icon); 
     alertDialog.show(); 
    } 

    public static void dismissDialog() 
    { 
     alertDialog.dismiss(); 
    } 
} 
0

你只是想創建一個名爲mainvalidation新的類,然後宣告你的項目,如:

final static AlertDialog.Builder alertbox 

然後,您可以根據需要調用您的方法。

+0

嗨,謝謝你的回答,我已經試過這個,但是我得到了錯誤,我上面已經編輯過了。謝謝 – Tommy 2011-03-03 14:40:59