2012-04-03 58 views
3

アクティビティを変更するときに黒い画面の問題に直面しています。私はなぜこれが起こっているのか答えを見つけましたが、解決策を見つけることができませんでした。 playActivityからGameCompleteActivityに移動して、次のレベルに行く間に次のレベルに進むことができます。私はplayActivityのインスタンスを終了し、同じPlayActivityの新しいIntentを呼び出しています。私は次のレベルのために新しいplayActivityを開始するために最後のplayActivityを終了しなければなりません。これは、次のレベルに進む間に、遅れや黒い画面が表示される場所です。つまり、終了後に再びplayActivityを開始するには時間がかかります。アクティビティの変更中に黒い画面が表示される

Transculent.Themeも試しましたが、うまくいきませんでした。 AsyncTaskも私に望みの結果を与えてくれませんでした

私はアクティビティのフェードアウトや、私の黒い画面動作を隠すかもしれない何かのアニメーションを表示すると思った?

は解決策が必要ですか? ....ありがとう

答えて

5

これは、通常、新しいアクティビティがUIスレッドにデータを読み込んでいるため、すべてが読み込まれるまで画面が黒く表示されることを意味します。

すべてのアクティビティデータ(これはゲームなので、レベル&のグラフィックスだと思います)を別のスレッドにロードし、データが使用できる状態になったらPlayActivityに知らせるコードを移動することを検討してください。

+0

ok私はAsyncTaskに物事をもう一度入れようとしています....それが助けてくれると嬉しく思います... – user1169079

0

いつでも、このようなことは、新しいアクティビティが呼び出されたときにデバッグすることを忘れないでください。

ゲームを作っているときに、異なるさまざまなモジュールのパーティションを作ってみてください。あなたの問題を追跡するのが簡単になります。

+0

私はそれを維持しようとしますか?私は本当にそれをハードにデバッグする必要がありますそれ以外の場合、私は私の活動が時間のために残っている方法を開始する前にアニメーションを置く必要があると思います... – user1169079

+0

@ user1169079:アニメーション効果のためにデバッグし、 。 – Bhavin

0

あなたのonCreateに重いUI関連のコードがある場合は、いくつかの関数IntializeUI()を作成してonCreateの外でやってみるか、モジュラーで分割するか、またはあなたの活動のTransculentテーマを使用してください...

0

それは非常に単純なバグです:ちょうどあなたの活動にマニフェストファイルのプロパティにします:アンドロイド:テーマ= "@アンドロイド:スタイル/ ... - それはあまりにも多くの活動も可能ですが、それは半透明にする

0

。メインスレッドでこれを行う、私の経験で最も一般的な/目立つ原因は、移行時にstartActivity()の直後にfinish()を呼び出すことです。これを行うのは間違っているとは言いませんが、blあなたはのnoHistoryなどの別の方法を試す必要があるかもしれません。

関連する問題