11

フラグメント Aにフォーカスがあります。フラグメント Bが作成されると、Bフォーカスを取得します。これにより、Aはフォーカスを失いますが、まだ表示されています。Bが破壊された場合、 Aが再びフォーカスを取得します。Aがフォーカスを取り戻すと、そのメソッドonResume()が呼び出されますか? そうでない場合、なぜですか?

( ABは同じ活動に参加しています。)

4

1 に答える 1

13

あなたが説明した場合、 onResume() メソッドは呼び出されません。Android フラグメントのライフサイクルに関するドキュメントを確認してください。

onResume() は、フラグメントが初めて UI に追加されたときに呼び出され、その後は一時停止から戻るたびに呼び出されます。フラグメントがバック スタックに追加された場合、ユーザーがホーム ボタンを押してアプリを非表示にした場合、または他のアプリが電話を引き継いだ場合 (ユーザーが電話を受けるなど)、フラグメントは一時停止します。アプリは完全に表示され、フラグメントは一時停止されていません。

UI フォーカスをアクティビティ/フラグメントのライフサイクルと混同しないでください。あなたが説明している状況は、 OnFocusChangeListenerにより適しているようです。

于 2012-10-12T18:16:48.803 に答える