2013-04-25 80 views
0

我在啓動Activity時遇到問題。我試圖用靜態方法開始一個新的活動。從靜態方法開始活動

這是我的代碼:

static Dialog dialog=null; 
public static void NextLevel(Context c,String title,String message){ 


    AlertDialog.Builder alertbox = new AlertDialog.Builder(c); 
    alertbox.setTitle(title); 
    alertbox.setMessage(message); 
    alertbox.setPositiveButton("Volgende level", new DialogInterface.OnClickListener() { 
     public void onClick(DialogInterface arg0, int arg1) { 

     } 
    }); 
    alertbox.setNegativeButton("Terug naar menu", new DialogInterface.OnClickListener() { 
     public void onClick(DialogInterface arg0, int arg1) { 
      startActivity(new Intent(Main.this, MainMenu.class)); 
     } 
    }); 
    alertbox.show(); 
} 

的startActivity不起作用,因爲它不能從一個靜態方法開始一個活動。我似乎無法找到解決這個問題的方法,因爲我也無法自己創建一個上下文來啓動它。

+4

用作c.startActivity(new Intent(c,MainMenu.class)); – 2013-04-25 08:44:57

回答

5

使用

c.startActivity(new Intent(c, MainMenu.class)); 
+0

謝謝,它的工作! – Marc 2013-04-25 08:49:32

0

嘗試改變startActivity行:

context.startActivity(new Intent(c, MainMenu.class)); 

和參數C到:

final Context c 
0

你應該通過當前活動的實例到靜態方法和呼叫startActivity() mehod就可以了。