1

アクティビティから抜け出し、以前の状態とまったく同じ状態に復元するにはどうすればよいですか?その活動では、私はスピナーを持っています。ドロップダウンから2番目のアイテムを選択すると、そのアクティビティから抜け出し、再び戻ると、アクティビティがリロードされます。しかし、以前のアクティビティを正確に復元したいですか?

spinner.post(new Runnable() {
        public void run() {
            spinner.setOnItemSelectedListener(new OnItemSelectedListener() {

                @Override
                public void onItemSelected(AdapterView<?> arg0, View arg1,
                        int arg2, long arg3) {
                    dealerCd_fromDD = dealerInsp.getMap2().get(
                            dealerInsp.getLoadseqArray()[arg2]);
                    GlobalVehicle.setVehList(loadVehicles(dealerCd_fromDD));
                    loadHosts(GlobalVehicle.getVehList());
                    dealerDetails(dealerCd_fromDD, GlobalVehicle.getDealerObject());
                    loadDefaults(arg2);
                    pos=arg2;
                    deliveryInspDb.delete("damages");
                }

                @Override
                public void onNothingSelected(AdapterView<?> arg0) {

                }
            });
        }
    });

誰でもこれについて私を助けてください。

finish()を呼び出そうとしましたが、3つの異なるアクティビティからそのアクティビティにアクセスしています。そのため、その状況では機能しません。

4

3 に答える 3

0

onSaveInstanceStateアクティビティの状態を保存するために使用し、アクティビティの状態を取得するために使用してみてくださいonRestoreInstanceState。このリンクを確認してください。おそらく問題が解決します。 https://stackoverflow.com/a/151940/1626878

于 2012-09-05T11:57:37.040 に答える
0

アクティビティのイベントまたは取得イベントでデータをSharedPreferencesに保存できます。onStop()onPause()onRestart()

        @Override
        protected void onStop() {
            // TODO Auto-generated method stub
            super.onStop();
            SharedPreferences settings = getSharedPreferences(PREFS_NAME, MODE_PRIVATE);
            SharedPreferences.Editor editor = settings.edit();                      
            editor.putInt("Selected", spinner.getSelectedItemPosition());
            editor.commit();
        }
     ....

    @Override
    protected void onRestart() {
        // TODO Auto-generated method stub
        super.onRestart();          
        SharedPreferences settings = getSharedPreferences(PREFS_NAME, MODE_PRIVATE);
        spinner.setSelection(settings.getInt("Selected", 0));           
    }

onCreate()アクティビティが強制終了された場合でもデータを復元する必要がある場合は、それを取得することもできます

更新: 別のアクティビティから来ている場合は、 を試すことができIntent.FLAG_ACTIVITY_REORDER_TO_FRONTます。これにより、アクティビティが殺されていなければ、アクティビティが前面に表示されます。

于 2012-09-05T10:48:12.863 に答える
0

http://wptrafficanalyzer.in/blog/implement-swiping-between-tabs-with-viewpager-in-action-bar-using-sherlock-library/ フラグメントを使用してみてください。リンクをたどることができます。

于 2012-09-05T10:32:29.923 に答える