1

私のアプリケーションには、(作成時に) 後続の読み込みが行われるアクティビティ UserMenu があります。次回アプリケーションを開いたときに、この画面を再度リロードしないようにしたい - UserMenu 画面の状態をそのまま保存したい。

私はこれを進めてきましが、実装しなければならないものを見ることができません。値を保存したくありません。Androidでホームボタンを押すと同じ画面を再作成したいだけです。

私の問題について親切に助けてください。

ありがとう

4

3 に答える 3

0

あなたがホームボタンについて言っているように、私によればそれは不可能です。ホームボタンを押すとアクティビティが入り、onPause()再度開くと入りますonResume()。フォローしているリンクで提案されていることを行うことができます。つまり、これを実行することは保証されていませんをActvity使用して要素の値を保存できますonSavedInstanceStateを読んでくださいonSavedInstanceState()

于 2013-03-08T07:06:37.203 に答える
0

あなたはこのようにすることができます

UserMenu Activity クラスで

@Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if (keyCode == KeyEvent.KEYCODE_BACK) {
            goToHome();
            return true;
        }

        return super.onKeyDown(keyCode, event);
    }

    private void goToHome() {
        moveTaskToBack(true);

    }

したがって、戻るボタンを押すと、アクティビティは破棄されずにホームに移動し、ホームボタンを長押しするか、メニューからアプリを起動すると、アクティビティが再度読み込まれません。

ありがとう

于 2013-03-08T06:58:33.370 に答える
0

シンプルにするためにアクティビティライフサイクルに従う必要があります。メソッドから関数呼び出しを行ってそれらのデータをロードし、onCreate()を使用してスタンドアロンクラスにデータを保存し、保存されたデータを表示します。データがすでにロードされているかどうかを判断するだけです。ロードされていない場合はロードします。そうでない場合はロードしません。ArrayList()onResume()ArrayList()onCreate()ArrayList()

于 2013-03-08T07:16:49.700 に答える