2

ようやくcocos2dのゲーム開発が終わり、これを取得するために、次のgameover.classのアクティビティにtotalScoreを送って、高ければhighscoreとして設定し、スコアとプレイヤー名を表示させたいと考えています。私はこれを行いましたが、ゲームが終了すると、gameover.class アクティビティを取得できません。どこが間違っているのかわかりません。私を助けてください

これは私のゲームプレイ レイヤーです (最初のアクティビティ)

 if (spriteCounter<=0)
                {


                    Intent mainScore = new Intent(CCDirector.sharedDirector().getActivity(), GameOver.class);
                    mainScore.putExtra("totalscore", countScore);
                    CCDirector.sharedDirector().getActivity().startActivity(mainScore);
                    System.out.println("------------");
                    CCDirector.sharedDirector().getActivity().finish();

                 }

gameover.class (2 回目のアクティビティ)

public class GameOver extends MainActivity {

ImageView playagain, home;
String[] columns;
int Score = 0;
String TOTALSCORE = "score";
String PLAYERNAME = "playername";

SQLiteDatabase db;

SharedPreferences sharedPreference = CCDirector.sharedDirector()
        .getActivity().getSharedPreferences("sharedPreference", 0);

@Override
protected void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);
    setContentView(R.layout.gameover);

    int totalscore = getIntent().getIntExtra("totalscore", -1);
    SharedPreferences sharedPreference = CCDirector.sharedDirector()
            .getActivity().getSharedPreferences("sharedPreference", 0);
    long temp_totalscore = (long) totalscore;
    try {
        String bp_totalscore = sharedPreference.getString(TOTALSCORE, null);
        String bp_playername = sharedPreference.getString(PLAYERNAME, null);
        if (totalscore > Integer.parseInt(bp_totalscore)) {

            showSettingsDialog(temp_totalscore);

        }

    } catch (Exception e) {
        showSettingsDialog(temp_totalscore);
    }

    intiatizeviews();
    viewlisteners();

}

private void showSettingsDialog(long totalscore) {
    EnterHighscore dialog = new EnterHighscore(this, totalscore);

    dialog.show();

}

private void intiatizeviews() {
    playagain = (ImageView) findViewById(R.id.playagainimageView);
    home = (ImageView) findViewById(R.id.homeimageView);

}
4

1 に答える 1

0

gameover.classしかし、ゲームが終了すると、アクティビティを取得できません

あなたの問題は、この新しいアクティビティの起動中にアプリケーションがクラッシュし、logcat がクラスを見つけられなかったことを示していることであると仮定します。これをマニフェスト ファイルにgameover登録しましたか?GameOver Activity

于 2013-07-20T12:42:42.560 に答える