Libgdxで画面を完全に処分する適切な方法は何ですか?現在、私が前の画面にボタンがあった場所をクリックすると、その画面上にあれば、ボタンはまだやることができます。 .dispose()
- dispose()
メソッドでできることは何ですか?または画面上にすべてを廃棄する簡単な方法がありますか?Libgdxで画面を適切に廃棄する方法
答えて
残念ながら、より簡単な方法はありません。これらのクラスは、それを自動的に行うための共通の "Disposable
"インターフェイスなどを共有しません。 dispose()
メソッドを持つものは、それがもはや必要でないときは手動で処分する必要があります。
これはScreens
でも有効です。 Screens
を切り替えると自動的に処理されませんが、自分で処理する必要があります(Game.setScreen()
に電話する前に)。
一方、これは大きな問題ではありません。あなたのScreen
のすべてを調べて、それを廃棄するかどうかを確認してください。 disposeメソッドがある場合はScreen
のdispose()
で呼び出します。
しかし、これは最後のScreen
の目に見えないボタンについてのあなたの行動を説明していません。 Stage
を使用し、Gdx.input.setInputProcessor(stage);
を使用したとします。この設定は、画面を変更したときに変更されず、入力プロセッサーを現在のScreen
のStage
、または現在のScreen
の入力を処理するものに設定する必要があります。そうすることで、「古い」段階では入力を一切取得できなくなります。
この問題は、インプルプロセッサに新しい段階を渡していないことが確認できます。これは、説明したように「ゴースト」ボタンになります。
は残念ながらLibGDX API documentation処分
注()が自動的に呼び出されていないと言います。
だから私はhide()
が自動的に呼び出され、それは非常にうまく機能しているので、画面内hide()
メソッド内のすべての使い捨て(のようなStage
、Skin
、Texture
...等)を配置されて何をすべきか!
例:すべての変数については
public class GameScreen implements Screen {
...
@Override
public void hide() {
mainStage.dispose();
playGroundStage.dispose();
controller.dispose();
labelActor.dispose();
}
...
}
誰かがあなたに電話をかけたらアンドロイドで呼び出されるので、hide()メソッドの中に物を置くことはお勧めしません –
- 1. LibGdxで画面を廃棄する
- 2. Androidの適切なクリーンアップ/廃棄
- 3. libgdxボーダーレス全画面
- 4. Libgdxで複数の画面で戻るボタンを管理する方法は?
- 5. アンマネージドリソースを手動で廃棄する方法
- 6. LibGDXの分割画面
- 7. ブラシを廃棄する
- 8. ImageListを廃棄する
- 9. StringBuilderオブジェクトを廃棄する
- 10. StructureMapコンテナを廃棄する
- 11. Libgdx - 塗りつぶし矩形をscene2dの適切な場所に描画する方法は?
- 12. 廃棄インスタンス
- 13. ネットワーク廃棄ステータス
- 14. カスタムオブジェクトの廃棄
- 15. パケットをC++でIPで廃棄する
- 16. 強制終了画面を適切なエラーメッセージと置き換える方法。
- 17. ldpi、hdpi画面に配置する画像のサイズを変更する適切な方法
- 18. オブジェクトを正しく廃棄する方法(ASP.NET MVC + Entity Framework)
- 19. オブジェクトを廃棄する - 画面上のベースタイプをどのくらい正しく印刷するのですか
- 20. libpcapでパケットを廃棄する
- 21. C#でリソースを廃棄する
- 22. libgdxを使って「読み込み画面」を取得する方法は?
- 23. NUnit-オブジェクトの廃棄
- 24. NSMenuItemで画像を使用する適切な方法は?
- 25. 画面の一部でビューを切り替える方法
- 26. グラフィックスの廃棄に関する質問
- 27. 「廃棄オブジェクトにアクセスできない」
- 28. スクラップ、JavaScript内のデータを廃棄する
- 29. インポートされたDLLを廃棄する
- 30. ViewModelsとCanExecuteハンドラを廃棄する
?どうすればそれらを扱うことができますか? – Chris
@ user2341336正確にどの変数を意味していますか?私はスクリーンに論理的に属しているので、Screenクラスに配置する必要があるほとんどのものをScreenクラス自身のプライベートプロパティとして保持します。 – noone