0

私には3つのアクティビティが
あります-scelta
-checkin-
instarghe

フォームsceltaとチェックイン私はinstargheに行くことができます。チェックインからinstargheに行くときに、戻るボタンを使用すると、チェックインアクティビティが再実行されるようにしたいと思います。
例:
チェックイン->instarghe->戻るボタン->2回目のチェックイン
scelta->instarghe->戻るボタン->通常はsceltaに戻る
どうすればよいですか?

私はこのコードを書きます:

protected void onRestart(){
    //popolamento dello spinnero
    String risposta=postTarghe();
    Spinner spinner = (Spinner) findViewById(R.id.spnTarghe);
    final String targhe[]=risposta.split("/");
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(
            this,
            android.R.layout.simple_spinner_item,
            targhe
            );
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

    spinner.setAdapter(adapter);
    spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
        public void onItemSelected(AdapterView<?> parent, View v, int position,long id) {
            sTarga=targhe[position];
            Log.d(TAG,"questa è la posizione selezionata: "+position);
            Log.d(TAG,"questa è la targa: "+sTarga);
        }
        public void onNothingSelected(AdapterView<?> parentView) {
                // your code here
        }
    });
};

しかし、試してみると、アプリがクラッシュします。これはlogcatです:

java.lang.RuntimeException:アクティビティ{com.homelinux.agnese / com.homelinux.agnese.entrata}を再開できません:android.app.SuperNotCalledException:アクティビティ{com.homelinux.agnese/com.homelinux.agnese.entrata}は再開しませんでしたsuper.onRestart()への呼び出し原因:android.app.SuperNotCalledException:アクティビティ{com.homelinux.agnese / com.homelinux.agnese.entrata}がsuper.onRestart()への呼び出しをしませんでした

4

2 に答える 2

1

最初に:答えとしてではなく、質問の中にコードを投稿してください!

2番:

protected void onRestart(){
    /****************
    * You forgot following line
    ****************/
    super.onRestart();
    /***************/
    //popolamento dello spinnero
    String risposta=postTarghe();
    Spinner spinner = (Spinner) findViewById(R.id.spnTarghe);
    final String targhe[]=risposta.split("/");
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(
            this,
            android.R.layout.simple_spinner_item,
            targhe
            );
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

    spinner.setAdapter(adapter);
    spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
        public void onItemSelected(AdapterView<?> parent, View v, int position,long id) {
            sTarga=targhe[position];
            Log.d(TAG,"questa è la posizione selezionata: "+position);
            Log.d(TAG,"questa è la targa: "+sTarga);
        }
        public void onNothingSelected(AdapterView<?> parentView) {
                // your code here
        }
    });
};
于 2012-06-30T13:59:31.113 に答える
0

チェックインで使用onRestart()し、ここで再実行ロジックを使用します。おそらくこれで問題は解決します。

onRestart()オーバーライドされたバージョン内のスーパークラスを呼び出すonRestart()

于 2012-06-30T13:18:51.613 に答える