0

アクティビティの開始に問題があります。静的メソッド内で新しいアクティビティを開始しようとしています。

これはそのための私のコードです:

    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

3 に答える 3

5

使用する

c.startActivity(new Intent(c, MainMenu.class));
于 2013-04-25T08:46:28.270 に答える
0

startActivity 行を次のように変更してみてください。

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

およびパラメーター c を次のようにします。

final Context c
于 2013-04-25T08:47:06.423 に答える
0

現在のアクティビティのインスタンスを静的メソッドに渡し、その上でstartActivity()メソッドを呼び出す必要があります。

于 2013-04-25T08:47:11.810 に答える