0

Cosos2d for Android フレームワーク (Java) を使用して、iPhone Cocos2d ゲームを Android に移植しようとしています。

メイン アクティビティから PreferenceActivity を開始すると、問題が発生します。これは私のセットアップです:

(1) HelloWordActivity.java: Cocos2d 環境を初期化し、GameLayer.scene を起動します。

(2) Gamelayer.scene: ユーザーにゲームを提示しますが、次のように Gamelayer クラスから呼び出される設定ペインを表示するボタンもあります。

       Intent intent = new Intent(Intent.ACTION_VIEW);
       intent.setClassName(helloworldactivity, ShowSettingsActivity.class.getName());
       helloworldactivity.startActivity(intent);

これは Preference アクティビティが正常であることを示していますが、設定を閉じてゲームに戻ると、持続していないように見えます (リロード/再起動され、状態が保持されません)。

Cocos2d で現在のゲーム セッションを破棄せずに、標準の Android 設定画面をユーザーに表示するにはどうすればよいですか?

4

2 に答える 2

1

新しいアクティビティを開始するには、メイン アクティビティを取得する必要があります。このコードが役立つことを願っています。

Activity context = CCDirector.sharedDirector().getActivity();
Intent intent = new Intent(Intent.ACTION_VIEW);
       intent.setClassName(helloworldactivity, ShowSettingsActivity.class.getName());
       context.startActivity(intent);
于 2012-06-06T21:41:55.297 に答える
1

あなたのクラスの名前から、ダンのチュートリアルをスターターとして使用したと仮定しています。設定をロードしているときに呼び出されるダンの onStop() オーバーライド メソッドを削除してください。

CCDirector.sharedDirector().end();

これを削除すると、あなたのためにそれを行うはずです

私はあなたがあきらめて andEngine に切り替えたことに気付きました。それも素晴らしいエンジンですが、とにかくこれに答えると思いました

于 2012-02-07T16:04:32.213 に答える