2013-04-25 78 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就可以了。