0

戻った後に変数が別のフラグメントから変更された後に変数をリロードできるように、onResume を呼び出そうとしています。

@Override
    public void onResume(){
        check1=(CheckBox)getActivity().findViewById(R.id.CheckBox01);

    }

上に添付されているのは私の onResume() コードです。CheckBox01 は別のフラグメントにあります。ただし、実行時にエラーが発生し、アプリケーションが終了します。

文句を言っている

アクティビティを再開できません: android.app.supernotcallException: Fragment Tabmodes は super.Resume() を呼び出しませんでした

私のエラーはどこですか?

4

3 に答える 3

8

onResume()エラーが(不可解に)述べているように、オーバーライドするときにスーパーメソッドを呼び出す必要があります。

@Override
public void onResume(){
    super.onResume();
    check1=(CheckBox)getActivity().findViewById(R.id.CheckBox01);
}
于 2012-10-24T22:49:40.307 に答える
2

supernotcalledExceptionエラーが何であるかをdid not call through to super.Resume()伝えています!

メソッドsuper.onResume();をオーバーライドするときに呼び出しがありません。onResume()

于 2012-10-24T23:00:08.363 に答える
0

エラーは、super.onResume を呼び出す必要があることです。Android で初期化メソッドとティアダウン メソッドをオーバーライドする場合、メソッドのスーパー バージョンを呼び出す必要があります。そうしないと機能しません。super.onCreate、super.onResume、super.onDestroy など。私は init メソッドを super 呼び出しで開始し、それでティアダウン メソッドを終了する傾向があります。

于 2012-10-24T22:48:36.070 に答える