5

「フラグメント B」をホストする「アクティビティ A」があります。A.finish() を呼び出すと、「フラグメント B」が破棄されることを確認してください。フラグメント B は、すでにフラグメント マネージャーに追加されています。フラグメントがサブ アクティビティであることは認識していますが、フラグメント マネージャーに Ondestroy でフラグメントをリリースするように指示する必要がありますか、それともすべて処理されていますか?

4

3 に答える 3

8
but i want to know do i have to tell the fragment manager to 
release the fragment in Ondestroy or is it all taken care of ?

デフォルトでは、アクティビティを呼び出すと、アクティビティにアタッチされているすべてのフラグメントのメソッドfinishが自動的に呼び出されて破棄されるため、アクティビティのメソッドでフラグメントを破棄することを心配する必要はありません。onDestroyonDestroy

ドキュメントから:

For example, when the activity is paused, so are all fragments in it, 
and when the activity is destroyed, so are all fragments. 
于 2014-08-20T20:43:45.993 に答える
0

はい、フラグメントは破棄されます。Androidフラグメントガイドから:

たとえば、アクティビティが一時停止されると、その中のすべてのフラグメントも一時停止され、アクティビティが破棄されると、すべてのフラグメントも破棄されます。

于 2014-08-20T20:51:05.607 に答える
0

フラグメントは、アクティビティのサブアクティビティです。したがって、finish を呼び出すたびに、それに関連付けられているフラグメントも FragmentManager に通知せずに破棄されます。

于 2014-08-20T20:42:56.657 に答える