blob: edd5d88eefeb932d995cf4173306829da361f22a [file] [log] [blame]
<html devsite="true">
<head>
<title>FragmentController</title>
{% setvar book_path %}/reference/androidx/_book.yaml{% endsetvar %}
{% include "_shared/_reference-head-tags.html" %}
</head>
<body>
<h1>FragmentController</h1>
{% setvar page_path %}androidx/fragment/app/FragmentController.html{% endsetvar %}
{% setvar can_switch %}1{% endsetvar %}
{% include "reference/_java_switcher2.md" %}
<p>TODO(b/166518424) class signature</p>
<p>TODO(b/166518951) inheritance hierarchy</p>
<p>TODO(b/166518636) direct subclasses</p>
<p>TODO(b/166518636) indirect subclasses</p>
<hr>
<p>
<p>Provides integration points with a <code><a href="/reference/androidx/fragment/app/FragmentManager.html">FragmentManager</a></code> for a fragment host. </p>
<p> It is the responsibility of the host to take care of the Fragment's lifecycle. The methods provided by <code><a href="/reference/androidx/fragment/app/FragmentController.html">FragmentController</a></code> are for that purpose.</p>
</p>
<h2>Summary</h2>
<p>Nested *</p>
<p>Enum values</p>
<p>Constants</p>
<p>Public fields</p>
<p>Protected fields</p>
<p>Public constructors</p>
<p>Protected constructors</p>
<div class="devsite-table-wrapper">
<table class="responsive">
<thead>
<tr>
<th colspan="2"><h3>Public methods</h3></th>
</tr>
</thead>
<tbody>
<tr>
<td><code>&nbsp;void</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#attachHost(androidx.fragment.app.Fragment)">attachHost</a>(<a href="/reference/androidx/fragment/app/Fragment.html">Fragment</a>&nbsp;parent)</code></div>
<p>Attaches the host to the FragmentManager for this controller.</p>
</td>
</tr>
<tr>
<td><code>static&nbsp;&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html">FragmentController</a></code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#createController(androidx.fragment.app.FragmentHostCallback&lt;?&gt;)">createController</a>(<a href="/reference/androidx/fragment/app/FragmentHostCallback.html">FragmentHostCallback</a>&lt;<a href="/reference/java/lang/Object.html">Object</a>&gt;&nbsp;callbacks)</code></div>
<p>Returns a <code><a href="/reference/androidx/fragment/app/FragmentController.html">FragmentController</a></code> .</p>
</td>
</tr>
<tr>
<td><code>&nbsp;void</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchActivityCreated()">dispatchActivityCreated</a>()</code></div>
<p>
<p>Moves all Fragments managed by the controller's FragmentManager into the activity created state.</p>
</p>
</td>
</tr>
<tr>
<td><code>&nbsp;void</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchConfigurationChanged(android.content.res.Configuration)">dispatchConfigurationChanged</a>(Configuration&nbsp;newConfig)</code></div>
<p>
<p>Lets all Fragments managed by the controller's FragmentManager know a configuration change occurred.</p>
</p>
</td>
</tr>
<tr>
<td><code>&nbsp;boolean</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchContextItemSelected(android.view.MenuItem)">dispatchContextItemSelected</a>(MenuItem&nbsp;item)</code></div>
<p>
<p>Sends a context item selection event to the Fragments managed by the controller's FragmentManager.</p>
</p>
</td>
</tr>
<tr>
<td><code>&nbsp;void</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchCreate()">dispatchCreate</a>()</code></div>
<p>
<p>Moves all Fragments managed by the controller's FragmentManager into the create state.</p>
</p>
</td>
</tr>
<tr>
<td><code>&nbsp;boolean</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchCreateOptionsMenu(android.view.Menu,android.view.MenuInflater)">dispatchCreateOptionsMenu</a>(Menu&nbsp;menu,&nbsp;MenuInflater&nbsp;inflater)</code></div>
<p>
<p>Lets all Fragments managed by the controller's FragmentManager know they should create an options menu.</p>
</p>
</td>
</tr>
<tr>
<td><code>&nbsp;void</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchDestroy()">dispatchDestroy</a>()</code></div>
<p>
<p>Moves Fragments managed by the controller's FragmentManager into the destroy state.</p>
</p>
</td>
</tr>
<tr>
<td><code>&nbsp;void</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchDestroyView()">dispatchDestroyView</a>()</code></div>
<p>
<p>Moves all Fragments managed by the controller's FragmentManager into the destroy view state.</p>
</p>
</td>
</tr>
<tr>
<td><code>&nbsp;void</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchLowMemory()">dispatchLowMemory</a>()</code></div>
<p>
<p>Lets all Fragments managed by the controller's FragmentManager know the device is in a low memory condition.</p>
</p>
</td>
</tr>
<tr>
<td><code>&nbsp;void</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchMultiWindowModeChanged(boolean)">dispatchMultiWindowModeChanged</a>(boolean&nbsp;isInMultiWindowMode)</code></div>
<p>
<p>Lets all Fragments managed by the controller's FragmentManager know the multi-window mode of the activity changed.</p>
</p>
</td>
</tr>
<tr>
<td><code>&nbsp;boolean</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchOptionsItemSelected(android.view.MenuItem)">dispatchOptionsItemSelected</a>(MenuItem&nbsp;item)</code></div>
<p>
<p>Sends an option item selection event to the Fragments managed by the controller's FragmentManager.</p>
</p>
</td>
</tr>
<tr>
<td><code>&nbsp;void</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchOptionsMenuClosed(android.view.Menu)">dispatchOptionsMenuClosed</a>(Menu&nbsp;menu)</code></div>
<p>
<p>Lets all Fragments managed by the controller's FragmentManager know their options menu has closed.</p>
</p>
</td>
</tr>
<tr>
<td><code>&nbsp;void</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchPause()">dispatchPause</a>()</code></div>
<p>
<p>Moves all Fragments managed by the controller's FragmentManager into the pause state.</p>
</p>
</td>
</tr>
<tr>
<td><code>&nbsp;void</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchPictureInPictureModeChanged(boolean)">dispatchPictureInPictureModeChanged</a>(boolean&nbsp;isInPictureInPictureMode)</code></div>
<p>
<p>Lets all Fragments managed by the controller's FragmentManager know the picture-in-picture mode of the activity changed.</p>
</p>
</td>
</tr>
<tr>
<td><code>&nbsp;boolean</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchPrepareOptionsMenu(android.view.Menu)">dispatchPrepareOptionsMenu</a>(Menu&nbsp;menu)</code></div>
<p>
<p>Lets all Fragments managed by the controller's FragmentManager know they should prepare their options menu for display.</p>
</p>
</td>
</tr>
<tr>
<td><code>&nbsp;void</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchReallyStop()">dispatchReallyStop</a>()</code></div>
<p><em>This method is deprecated.</em> This functionality has been rolled into <code><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchStop()">dispatchStop</a></code> .</p>
</td>
</tr>
<tr>
<td><code>&nbsp;void</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchResume()">dispatchResume</a>()</code></div>
<p>
<p>Moves all Fragments managed by the controller's FragmentManager into the resume state.</p>
</p>
</td>
</tr>
<tr>
<td><code>&nbsp;void</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchStart()">dispatchStart</a>()</code></div>
<p>
<p>Moves all Fragments managed by the controller's FragmentManager into the start state.</p>
</p>
</td>
</tr>
<tr>
<td><code>&nbsp;void</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchStop()">dispatchStop</a>()</code></div>
<p>
<p>Moves all Fragments managed by the controller's FragmentManager into the stop state.</p>
</p>
</td>
</tr>
<tr>
<td><code>&nbsp;void</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#doLoaderDestroy()">doLoaderDestroy</a>()</code></div>
<p><em>This method is deprecated.</em> Loaders are managed separately from FragmentController</p>
</td>
</tr>
<tr>
<td><code>&nbsp;void</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#doLoaderRetain()">doLoaderRetain</a>()</code></div>
<p><em>This method is deprecated.</em> Loaders are managed separately from FragmentController</p>
</td>
</tr>
<tr>
<td><code>&nbsp;void</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#doLoaderStart()">doLoaderStart</a>()</code></div>
<p><em>This method is deprecated.</em> Loaders are managed separately from FragmentController</p>
</td>
</tr>
<tr>
<td><code>&nbsp;void</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#doLoaderStop(boolean)">doLoaderStop</a>(boolean&nbsp;retain)</code></div>
<p><em>This method is deprecated.</em> Loaders are managed separately from FragmentController</p>
</td>
</tr>
<tr>
<td><code>&nbsp;void</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#dumpLoaders(java.lang.String,java.io.FileDescriptor,java.io.PrintWriter,java.lang.String[])">dumpLoaders</a>(<a href="/reference/java/lang/String.html">String</a>&nbsp;prefix,&nbsp;<a href="/reference/java/io/FileDescriptor.html">FileDescriptor</a>&nbsp;fd,&nbsp;<a href="/reference/java/io/PrintWriter.html">PrintWriter</a>&nbsp;writer,&nbsp;<a href="/reference/kotlin/Array.html">Array</a>&lt;<a href="/reference/java/lang/String.html">String</a>&gt;&nbsp;args)</code></div>
<p><em>This method is deprecated.</em> Loaders are managed separately from FragmentController</p>
</td>
</tr>
<tr>
<td><code>&nbsp;boolean</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#execPendingActions()">execPendingActions</a>()</code></div>
<p>
<p>Execute any pending actions for the Fragments managed by the controller's FragmentManager.</p>
</p>
</td>
</tr>
<tr>
<td><code>&nbsp;<a href="/reference/androidx/fragment/app/Fragment.html">Fragment</a></code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#findFragmentByWho(java.lang.String)">findFragmentByWho</a>(<a href="/reference/java/lang/String.html">String</a>&nbsp;who)</code></div>
<p>Returns a fragment with the given identifier.</p>
</td>
</tr>
<tr>
<td><code>&nbsp;<a href="/reference/java/util/List.html">List</a>&lt;<a href="/reference/androidx/fragment/app/Fragment.html">Fragment</a>&gt;</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#getActiveFragments(java.util.List&lt;androidx.fragment.app.Fragment&gt;)">getActiveFragments</a>(<a href="/reference/java/util/List.html">List</a>&lt;<a href="/reference/androidx/fragment/app/Fragment.html">Fragment</a>&gt;&nbsp;actives)</code></div>
<p>Returns the list of active fragments.</p>
</td>
</tr>
<tr>
<td><code>&nbsp;int</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#getActiveFragmentsCount()">getActiveFragmentsCount</a>()</code></div>
<p>Returns the number of active fragments.</p>
</td>
</tr>
<tr>
<td><code>&nbsp;<a href="/reference/androidx/fragment/app/FragmentManager.html">FragmentManager</a></code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#getSupportFragmentManager()">getSupportFragmentManager</a>()</code></div>
<p>Returns a <code><a href="/reference/androidx/fragment/app/FragmentManager.html">FragmentManager</a></code> for this controller.</p>
</td>
</tr>
<tr>
<td><code>&nbsp;LoaderManager</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#getSupportLoaderManager()">getSupportLoaderManager</a>()</code></div>
<p><em>This method is deprecated.</em> Loaders are managed separately from FragmentController and this now throws an <code><a href="/reference/java/lang/UnsupportedOperationException.html">UnsupportedOperationException</a></code> .</p>
</td>
</tr>
<tr>
<td><code>&nbsp;void</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#noteStateNotSaved()">noteStateNotSaved</a>()</code></div>
<p>Marks the fragment state as unsaved.</p>
</td>
</tr>
<tr>
<td><code>&nbsp;View</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#onCreateView(android.view.View,java.lang.String,android.content.Context,android.util.AttributeSet)">onCreateView</a>(View&nbsp;parent,&nbsp;<a href="/reference/java/lang/String.html">String</a>&nbsp;name,&nbsp;Context&nbsp;context,&nbsp;AttributeSet&nbsp;attrs)</code></div>
<p>Instantiates a Fragment's view.</p>
</td>
</tr>
<tr>
<td><code>&nbsp;void</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#reportLoaderStart()">reportLoaderStart</a>()</code></div>
<p><em>This method is deprecated.</em> Loaders are managed separately from FragmentController</p>
</td>
</tr>
<tr>
<td><code>&nbsp;void</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#restoreAllState(android.os.Parcelable,java.util.List&lt;androidx.fragment.app.Fragment&gt;)">restoreAllState</a>(Parcelable&nbsp;state,&nbsp;<a href="/reference/java/util/List.html">List</a>&lt;<a href="/reference/androidx/fragment/app/Fragment.html">Fragment</a>&gt;&nbsp;nonConfigList)</code></div>
<p><em>This method is deprecated.</em> Have your <code><a href="/reference/androidx/fragment/app/FragmentHostCallback.html">FragmentHostCallback</a></code> implement to automatically restore the Fragment's non configuration state and use <code><a href="/reference/androidx/fragment/app/FragmentController.html#restoreSaveState(android.os.Parcelable)">restoreSaveState</a></code> to restore the Fragment's save state.</p>
</td>
</tr>
<tr>
<td><code>&nbsp;void</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#restoreAllState(android.os.Parcelable,androidx.fragment.app.FragmentManagerNonConfig)">restoreAllState</a>(Parcelable&nbsp;state,&nbsp;<a href="/reference/androidx/fragment/app/FragmentManagerNonConfig.html">FragmentManagerNonConfig</a>&nbsp;nonConfig)</code></div>
<p><em>This method is deprecated.</em> Have your <code><a href="/reference/androidx/fragment/app/FragmentHostCallback.html">FragmentHostCallback</a></code> implement to automatically restore the Fragment's non configuration state and use <code><a href="/reference/androidx/fragment/app/FragmentController.html#restoreSaveState(android.os.Parcelable)">restoreSaveState</a></code> to restore the Fragment's save state.</p>
</td>
</tr>
<tr>
<td><code>&nbsp;void</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#restoreLoaderNonConfig(androidx.collection.SimpleArrayMap&lt;java.lang.String,androidx.loader.app.LoaderManager&gt;)">restoreLoaderNonConfig</a>(SimpleArrayMap&lt;String, LoaderManager&gt;&nbsp;loaderManagers)</code></div>
<p><em>This method is deprecated.</em> Loaders are managed separately from FragmentController</p>
</td>
</tr>
<tr>
<td><code>&nbsp;void</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#restoreSaveState(android.os.Parcelable)">restoreSaveState</a>(Parcelable&nbsp;state)</code></div>
<p>Restores the saved state for all Fragments.</p>
</td>
</tr>
<tr>
<td><code>&nbsp;SimpleArrayMap&lt;String, LoaderManager&gt;</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#retainLoaderNonConfig()">retainLoaderNonConfig</a>()</code></div>
<p><em>This method is deprecated.</em> Loaders are managed separately from FragmentController</p>
</td>
</tr>
<tr>
<td><code>&nbsp;<a href="/reference/androidx/fragment/app/FragmentManagerNonConfig.html">FragmentManagerNonConfig</a></code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#retainNestedNonConfig()">retainNestedNonConfig</a>()</code></div>
<p><em>This method is deprecated.</em> Have your <code><a href="/reference/androidx/fragment/app/FragmentHostCallback.html">FragmentHostCallback</a></code> implement to automatically retain the Fragment's non configuration state.</p>
</td>
</tr>
<tr>
<td><code>&nbsp;<a href="/reference/java/util/List.html">List</a>&lt;<a href="/reference/androidx/fragment/app/Fragment.html">Fragment</a>&gt;</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#retainNonConfig()">retainNonConfig</a>()</code></div>
<p><em>This method is deprecated.</em> Have your <code><a href="/reference/androidx/fragment/app/FragmentHostCallback.html">FragmentHostCallback</a></code> implement to automatically retain the Fragment's non configuration state.</p>
</td>
</tr>
<tr>
<td><code>&nbsp;Parcelable</code></td>
<td width="100%">
<div><code><a href="/reference/androidx/fragment/app/FragmentController.html#saveAllState()">saveAllState</a>()</code></div>
<p>Saves the state for all Fragments.</p>
</td>
</tr>
</tbody>
</table>
</div>
<h2>Public methods</h2>
<div><a name="attachHost-androidx.fragment.app.Fragment-"></a>
<h3 class="api-name" id="attachHost(androidx.fragment.app.Fragment)">attachHost</h3>
<pre class="api-signature no-pretty-print">&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#attachHost(androidx.fragment.app.Fragment)">attachHost</a>(<a href="/reference/androidx/fragment/app/Fragment.html">Fragment</a>&nbsp;parent)</pre>
<p>Attaches the host to the FragmentManager for this controller. The host must be attached before the FragmentManager can be used to manage Fragments.</p>
</div>
<div><a name="createController-androidx.fragment.app.FragmentHostCallback&lt;?&gt;-"></a>
<h3 class="api-name" id="createController(androidx.fragment.app.FragmentHostCallback&lt;?&gt;)">createController</h3>
<pre class="api-signature no-pretty-print">static&nbsp;&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html">FragmentController</a>&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#createController(androidx.fragment.app.FragmentHostCallback&lt;?&gt;)">createController</a>(<a href="/reference/androidx/fragment/app/FragmentHostCallback.html">FragmentHostCallback</a>&lt;<a href="/reference/java/lang/Object.html">Object</a>&gt;&nbsp;callbacks)</pre>
<p>Returns a <code><a href="/reference/androidx/fragment/app/FragmentController.html">FragmentController</a></code> .</p>
</div>
<div><a name="dispatchActivityCreated--"></a>
<h3 class="api-name" id="dispatchActivityCreated()">dispatchActivityCreated</h3>
<pre class="api-signature no-pretty-print">&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchActivityCreated()">dispatchActivityCreated</a>()</pre>
<p>
<p>Moves all Fragments managed by the controller's FragmentManager into the activity created state. </p>
<p>Call when Fragments should be informed their host has been created.</p>
</p>
<div class="devsite-table-wrapper">
<table class="responsive">
<thead>
<tr>
<th colspan="2">See also</th>
</tr>
</thead>
<tbody>
<tr>
<td><code><a href="/reference/androidx/fragment/app/Fragment.html#onActivityCreated(android.os.Bundle)">onActivityCreated</a></code></td>
<td width="100%"><code><a href="/reference/androidx/fragment/app/Fragment.html#onActivityCreated(android.os.Bundle)">onActivityCreated</a></code></td>
</tr>
</tbody>
</table>
</div>
</div>
<div><a name="dispatchConfigurationChanged-android.content.res.Configuration-"></a>
<h3 class="api-name" id="dispatchConfigurationChanged(android.content.res.Configuration)">dispatchConfigurationChanged</h3>
<pre class="api-signature no-pretty-print">&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchConfigurationChanged(android.content.res.Configuration)">dispatchConfigurationChanged</a>(Configuration&nbsp;newConfig)</pre>
<p>
<p>Lets all Fragments managed by the controller's FragmentManager know a configuration change occurred. </p>
<p>Call when there is a configuration change.</p>
</p>
<div class="devsite-table-wrapper">
<table class="responsive">
<thead>
<tr>
<th colspan="2">See also</th>
</tr>
</thead>
<tbody>
<tr>
<td><code><a href="/reference/androidx/fragment/app/Fragment.html#onConfigurationChanged(android.content.res.Configuration)">onConfigurationChanged</a></code></td>
<td width="100%"><code><a href="/reference/androidx/fragment/app/Fragment.html#onConfigurationChanged(android.content.res.Configuration)">onConfigurationChanged</a></code></td>
</tr>
</tbody>
</table>
</div>
</div>
<div><a name="dispatchContextItemSelected-android.view.MenuItem-"></a>
<h3 class="api-name" id="dispatchContextItemSelected(android.view.MenuItem)">dispatchContextItemSelected</h3>
<pre class="api-signature no-pretty-print">&nbsp;boolean&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchContextItemSelected(android.view.MenuItem)">dispatchContextItemSelected</a>(MenuItem&nbsp;item)</pre>
<p>
<p>Sends a context item selection event to the Fragments managed by the controller's FragmentManager. Once the event has been consumed, no additional handling will be performed. </p>
<p>Call immediately after an options menu item has been selected</p>
</p>
<div class="devsite-table-wrapper">
<table class="responsive">
<thead>
<tr>
<th colspan="2">Returns</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>boolean</code></td>
<td width="100%">
<p><code>{@code true}</code> if the context menu selection event was consumed</p>
</td>
</tr>
</tbody>
</table>
</div>
<div class="devsite-table-wrapper">
<table class="responsive">
<thead>
<tr>
<th colspan="2">See also</th>
</tr>
</thead>
<tbody>
<tr>
<td><code><a href="/reference/androidx/fragment/app/Fragment.html#onContextItemSelected(android.view.MenuItem)">onContextItemSelected</a></code></td>
<td width="100%"><code><a href="/reference/androidx/fragment/app/Fragment.html#onContextItemSelected(android.view.MenuItem)">onContextItemSelected</a></code></td>
</tr>
</tbody>
</table>
</div>
</div>
<div><a name="dispatchCreate--"></a>
<h3 class="api-name" id="dispatchCreate()">dispatchCreate</h3>
<pre class="api-signature no-pretty-print">&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchCreate()">dispatchCreate</a>()</pre>
<p>
<p>Moves all Fragments managed by the controller's FragmentManager into the create state. </p>
<p>Call when Fragments should be created.</p>
</p>
<div class="devsite-table-wrapper">
<table class="responsive">
<thead>
<tr>
<th colspan="2">See also</th>
</tr>
</thead>
<tbody>
<tr>
<td><code><a href="/reference/androidx/fragment/app/Fragment.html#onCreate(android.os.Bundle)">onCreate</a></code></td>
<td width="100%"><code><a href="/reference/androidx/fragment/app/Fragment.html#onCreate(android.os.Bundle)">onCreate</a></code></td>
</tr>
</tbody>
</table>
</div>
</div>
<div><a name="dispatchCreateOptionsMenu(android.view.Menu, android.view.MenuInflater)"></a><a name="dispatchCreateOptionsMenu-android.view.Menu-android.view.MenuInflater-"></a>
<h3 class="api-name" id="dispatchCreateOptionsMenu(android.view.Menu,android.view.MenuInflater)">dispatchCreateOptionsMenu</h3>
<pre class="api-signature no-pretty-print">&nbsp;boolean&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchCreateOptionsMenu(android.view.Menu,android.view.MenuInflater)">dispatchCreateOptionsMenu</a>(Menu&nbsp;menu,&nbsp;MenuInflater&nbsp;inflater)</pre>
<p>
<p>Lets all Fragments managed by the controller's FragmentManager know they should create an options menu. </p>
<p>Call when the Fragment should create an options menu.</p>
</p>
<div class="devsite-table-wrapper">
<table class="responsive">
<thead>
<tr>
<th colspan="2">Returns</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>boolean</code></td>
<td width="100%">
<p><code>{@code true}</code> if the options menu contains items to display</p>
</td>
</tr>
</tbody>
</table>
</div>
<div class="devsite-table-wrapper">
<table class="responsive">
<thead>
<tr>
<th colspan="2">See also</th>
</tr>
</thead>
<tbody>
<tr>
<td><code><a href="/reference/androidx/fragment/app/Fragment.html#onCreateOptionsMenu(android.view.Menu,android.view.MenuInflater)">onCreateOptionsMenu</a></code></td>
<td width="100%"><code><a href="/reference/androidx/fragment/app/Fragment.html#onCreateOptionsMenu(android.view.Menu,android.view.MenuInflater)">onCreateOptionsMenu</a></code></td>
</tr>
</tbody>
</table>
</div>
</div>
<div><a name="dispatchDestroy--"></a>
<h3 class="api-name" id="dispatchDestroy()">dispatchDestroy</h3>
<pre class="api-signature no-pretty-print">&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchDestroy()">dispatchDestroy</a>()</pre>
<p>
<p>Moves Fragments managed by the controller's FragmentManager into the destroy state. </p>
<p> If the <code><a href="/reference/androidx/fragment/app/FragmentHostCallback.html">FragmentHostCallback</a></code> is an instance of , then retained Fragments and any other non configuration state such as any attached to Fragments will only be destroyed if is called prior to this method. </p>
<p> Otherwise, the FragmentManager will look to see if the <code><a href="/reference/androidx/fragment/app/FragmentHostCallback.html">FragmentHostCallback</a></code> Context is an and if returns true. In only that case will non configuration state be retained. </p>
<p>Call when Fragments should be destroyed.</p>
</p>
<div class="devsite-table-wrapper">
<table class="responsive">
<thead>
<tr>
<th colspan="2">See also</th>
</tr>
</thead>
<tbody>
<tr>
<td><code><a href="/reference/androidx/fragment/app/Fragment.html#onDestroy()">onDestroy</a></code></td>
<td width="100%"><code><a href="/reference/androidx/fragment/app/Fragment.html#onDestroy()">onDestroy</a></code></td>
</tr>
</tbody>
</table>
</div>
</div>
<div><a name="dispatchDestroyView--"></a>
<h3 class="api-name" id="dispatchDestroyView()">dispatchDestroyView</h3>
<pre class="api-signature no-pretty-print">&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchDestroyView()">dispatchDestroyView</a>()</pre>
<p>
<p>Moves all Fragments managed by the controller's FragmentManager into the destroy view state. </p>
<p>Call when the Fragment's views should be destroyed.</p>
</p>
<div class="devsite-table-wrapper">
<table class="responsive">
<thead>
<tr>
<th colspan="2">See also</th>
</tr>
</thead>
<tbody>
<tr>
<td><code><a href="/reference/androidx/fragment/app/Fragment.html#onDestroyView()">onDestroyView</a></code></td>
<td width="100%"><code><a href="/reference/androidx/fragment/app/Fragment.html#onDestroyView()">onDestroyView</a></code></td>
</tr>
</tbody>
</table>
</div>
</div>
<div><a name="dispatchLowMemory--"></a>
<h3 class="api-name" id="dispatchLowMemory()">dispatchLowMemory</h3>
<pre class="api-signature no-pretty-print">&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchLowMemory()">dispatchLowMemory</a>()</pre>
<p>
<p>Lets all Fragments managed by the controller's FragmentManager know the device is in a low memory condition. </p>
<p>Call when the device is low on memory and Fragment's should trim their memory usage.</p>
</p>
<div class="devsite-table-wrapper">
<table class="responsive">
<thead>
<tr>
<th colspan="2">See also</th>
</tr>
</thead>
<tbody>
<tr>
<td><code><a href="/reference/androidx/fragment/app/Fragment.html#onLowMemory()">onLowMemory</a></code></td>
<td width="100%"><code><a href="/reference/androidx/fragment/app/Fragment.html#onLowMemory()">onLowMemory</a></code></td>
</tr>
</tbody>
</table>
</div>
</div>
<div><a name="dispatchMultiWindowModeChanged-boolean-"></a>
<h3 class="api-name" id="dispatchMultiWindowModeChanged(boolean)">dispatchMultiWindowModeChanged</h3>
<pre class="api-signature no-pretty-print">&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchMultiWindowModeChanged(boolean)">dispatchMultiWindowModeChanged</a>(boolean&nbsp;isInMultiWindowMode)</pre>
<p>
<p>Lets all Fragments managed by the controller's FragmentManager know the multi-window mode of the activity changed. </p>
<p>Call when the multi-window mode of the activity changed.</p>
</p>
<div class="devsite-table-wrapper">
<table class="responsive">
<thead>
<tr>
<th colspan="2">See also</th>
</tr>
</thead>
<tbody>
<tr>
<td><code><a href="/reference/androidx/fragment/app/Fragment.html#onMultiWindowModeChanged(boolean)">onMultiWindowModeChanged</a></code></td>
<td width="100%"><code><a href="/reference/androidx/fragment/app/Fragment.html#onMultiWindowModeChanged(boolean)">onMultiWindowModeChanged</a></code></td>
</tr>
</tbody>
</table>
</div>
</div>
<div><a name="dispatchOptionsItemSelected-android.view.MenuItem-"></a>
<h3 class="api-name" id="dispatchOptionsItemSelected(android.view.MenuItem)">dispatchOptionsItemSelected</h3>
<pre class="api-signature no-pretty-print">&nbsp;boolean&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchOptionsItemSelected(android.view.MenuItem)">dispatchOptionsItemSelected</a>(MenuItem&nbsp;item)</pre>
<p>
<p>Sends an option item selection event to the Fragments managed by the controller's FragmentManager. Once the event has been consumed, no additional handling will be performed. </p>
<p>Call immediately after an options menu item has been selected</p>
</p>
<div class="devsite-table-wrapper">
<table class="responsive">
<thead>
<tr>
<th colspan="2">Returns</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>boolean</code></td>
<td width="100%">
<p><code>{@code true}</code> if the options menu selection event was consumed</p>
</td>
</tr>
</tbody>
</table>
</div>
<div class="devsite-table-wrapper">
<table class="responsive">
<thead>
<tr>
<th colspan="2">See also</th>
</tr>
</thead>
<tbody>
<tr>
<td><code><a href="/reference/androidx/fragment/app/Fragment.html#onOptionsItemSelected(android.view.MenuItem)">onOptionsItemSelected</a></code></td>
<td width="100%"><code><a href="/reference/androidx/fragment/app/Fragment.html#onOptionsItemSelected(android.view.MenuItem)">onOptionsItemSelected</a></code></td>
</tr>
</tbody>
</table>
</div>
</div>
<div><a name="dispatchOptionsMenuClosed-android.view.Menu-"></a>
<h3 class="api-name" id="dispatchOptionsMenuClosed(android.view.Menu)">dispatchOptionsMenuClosed</h3>
<pre class="api-signature no-pretty-print">&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchOptionsMenuClosed(android.view.Menu)">dispatchOptionsMenuClosed</a>(Menu&nbsp;menu)</pre>
<p>
<p>Lets all Fragments managed by the controller's FragmentManager know their options menu has closed. </p>
<p>Call immediately after closing the Fragment's options menu.</p>
</p>
<div class="devsite-table-wrapper">
<table class="responsive">
<thead>
<tr>
<th colspan="2">See also</th>
</tr>
</thead>
<tbody>
<tr>
<td><code><a href="/reference/androidx/fragment/app/Fragment.html#onOptionsMenuClosed(android.view.Menu)">onOptionsMenuClosed</a></code></td>
<td width="100%"><code><a href="/reference/androidx/fragment/app/Fragment.html#onOptionsMenuClosed(android.view.Menu)">onOptionsMenuClosed</a></code></td>
</tr>
</tbody>
</table>
</div>
</div>
<div><a name="dispatchPause--"></a>
<h3 class="api-name" id="dispatchPause()">dispatchPause</h3>
<pre class="api-signature no-pretty-print">&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchPause()">dispatchPause</a>()</pre>
<p>
<p>Moves all Fragments managed by the controller's FragmentManager into the pause state. </p>
<p>Call when Fragments should be paused.</p>
</p>
<div class="devsite-table-wrapper">
<table class="responsive">
<thead>
<tr>
<th colspan="2">See also</th>
</tr>
</thead>
<tbody>
<tr>
<td><code><a href="/reference/androidx/fragment/app/Fragment.html#onPause()">onPause</a></code></td>
<td width="100%"><code><a href="/reference/androidx/fragment/app/Fragment.html#onPause()">onPause</a></code></td>
</tr>
</tbody>
</table>
</div>
</div>
<div><a name="dispatchPictureInPictureModeChanged-boolean-"></a>
<h3 class="api-name" id="dispatchPictureInPictureModeChanged(boolean)">dispatchPictureInPictureModeChanged</h3>
<pre class="api-signature no-pretty-print">&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchPictureInPictureModeChanged(boolean)">dispatchPictureInPictureModeChanged</a>(boolean&nbsp;isInPictureInPictureMode)</pre>
<p>
<p>Lets all Fragments managed by the controller's FragmentManager know the picture-in-picture mode of the activity changed. </p>
<p>Call when the picture-in-picture mode of the activity changed.</p>
</p>
<div class="devsite-table-wrapper">
<table class="responsive">
<thead>
<tr>
<th colspan="2">See also</th>
</tr>
</thead>
<tbody>
<tr>
<td><code><a href="/reference/androidx/fragment/app/Fragment.html#onPictureInPictureModeChanged(boolean)">onPictureInPictureModeChanged</a></code></td>
<td width="100%"><code><a href="/reference/androidx/fragment/app/Fragment.html#onPictureInPictureModeChanged(boolean)">onPictureInPictureModeChanged</a></code></td>
</tr>
</tbody>
</table>
</div>
</div>
<div><a name="dispatchPrepareOptionsMenu-android.view.Menu-"></a>
<h3 class="api-name" id="dispatchPrepareOptionsMenu(android.view.Menu)">dispatchPrepareOptionsMenu</h3>
<pre class="api-signature no-pretty-print">&nbsp;boolean&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchPrepareOptionsMenu(android.view.Menu)">dispatchPrepareOptionsMenu</a>(Menu&nbsp;menu)</pre>
<p>
<p>Lets all Fragments managed by the controller's FragmentManager know they should prepare their options menu for display. </p>
<p>Call immediately before displaying the Fragment's options menu.</p>
</p>
<div class="devsite-table-wrapper">
<table class="responsive">
<thead>
<tr>
<th colspan="2">Returns</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>boolean</code></td>
<td width="100%">
<p><code>{@code true}</code> if the options menu contains items to display</p>
</td>
</tr>
</tbody>
</table>
</div>
<div class="devsite-table-wrapper">
<table class="responsive">
<thead>
<tr>
<th colspan="2">See also</th>
</tr>
</thead>
<tbody>
<tr>
<td><code><a href="/reference/androidx/fragment/app/Fragment.html#onPrepareOptionsMenu(android.view.Menu)">onPrepareOptionsMenu</a></code></td>
<td width="100%"><code><a href="/reference/androidx/fragment/app/Fragment.html#onPrepareOptionsMenu(android.view.Menu)">onPrepareOptionsMenu</a></code></td>
</tr>
</tbody>
</table>
</div>
</div>
<div><a name="dispatchReallyStop--"></a>
<h3 class="api-name" id="dispatchReallyStop()">dispatchReallyStop</h3>
<pre class="api-signature no-pretty-print">&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchReallyStop()">dispatchReallyStop</a>()</pre>
<p class="caution"><strong>This method is deprecated.</strong><br>
<p>This functionality has been rolled into <code><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchStop()">dispatchStop</a></code> .</p>
</p>
</div>
<div><a name="dispatchResume--"></a>
<h3 class="api-name" id="dispatchResume()">dispatchResume</h3>
<pre class="api-signature no-pretty-print">&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchResume()">dispatchResume</a>()</pre>
<p>
<p>Moves all Fragments managed by the controller's FragmentManager into the resume state. </p>
<p>Call when Fragments should be resumed.</p>
</p>
<div class="devsite-table-wrapper">
<table class="responsive">
<thead>
<tr>
<th colspan="2">See also</th>
</tr>
</thead>
<tbody>
<tr>
<td><code><a href="/reference/androidx/fragment/app/Fragment.html#onResume()">onResume</a></code></td>
<td width="100%"><code><a href="/reference/androidx/fragment/app/Fragment.html#onResume()">onResume</a></code></td>
</tr>
</tbody>
</table>
</div>
</div>
<div><a name="dispatchStart--"></a>
<h3 class="api-name" id="dispatchStart()">dispatchStart</h3>
<pre class="api-signature no-pretty-print">&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchStart()">dispatchStart</a>()</pre>
<p>
<p>Moves all Fragments managed by the controller's FragmentManager into the start state. </p>
<p>Call when Fragments should be started.</p>
</p>
<div class="devsite-table-wrapper">
<table class="responsive">
<thead>
<tr>
<th colspan="2">See also</th>
</tr>
</thead>
<tbody>
<tr>
<td><code><a href="/reference/androidx/fragment/app/Fragment.html#onStart()">onStart</a></code></td>
<td width="100%"><code><a href="/reference/androidx/fragment/app/Fragment.html#onStart()">onStart</a></code></td>
</tr>
</tbody>
</table>
</div>
</div>
<div><a name="dispatchStop--"></a>
<h3 class="api-name" id="dispatchStop()">dispatchStop</h3>
<pre class="api-signature no-pretty-print">&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchStop()">dispatchStop</a>()</pre>
<p>
<p>Moves all Fragments managed by the controller's FragmentManager into the stop state. </p>
<p>Call when Fragments should be stopped.</p>
</p>
<div class="devsite-table-wrapper">
<table class="responsive">
<thead>
<tr>
<th colspan="2">See also</th>
</tr>
</thead>
<tbody>
<tr>
<td><code><a href="/reference/androidx/fragment/app/Fragment.html#onStop()">onStop</a></code></td>
<td width="100%"><code><a href="/reference/androidx/fragment/app/Fragment.html#onStop()">onStop</a></code></td>
</tr>
</tbody>
</table>
</div>
</div>
<div><a name="doLoaderDestroy--"></a>
<h3 class="api-name" id="doLoaderDestroy()">doLoaderDestroy</h3>
<pre class="api-signature no-pretty-print">&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#doLoaderDestroy()">doLoaderDestroy</a>()</pre>
<p class="caution"><strong>This method is deprecated.</strong><br>
<p>Loaders are managed separately from FragmentController</p>
</p>
<p>Destroys the loaders and, if their state is not being retained, removes them.</p>
</div>
<div><a name="doLoaderRetain--"></a>
<h3 class="api-name" id="doLoaderRetain()">doLoaderRetain</h3>
<pre class="api-signature no-pretty-print">&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#doLoaderRetain()">doLoaderRetain</a>()</pre>
<p class="caution"><strong>This method is deprecated.</strong><br>
<p>Loaders are managed separately from FragmentController</p>
</p>
<p>Retains the state of each of the loaders.</p>
</div>
<div><a name="doLoaderStart--"></a>
<h3 class="api-name" id="doLoaderStart()">doLoaderStart</h3>
<pre class="api-signature no-pretty-print">&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#doLoaderStart()">doLoaderStart</a>()</pre>
<p class="caution"><strong>This method is deprecated.</strong><br>
<p>Loaders are managed separately from FragmentController</p>
</p>
<p>Starts the loaders.</p>
</div>
<div><a name="doLoaderStop-boolean-"></a>
<h3 class="api-name" id="doLoaderStop(boolean)">doLoaderStop</h3>
<pre class="api-signature no-pretty-print">&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#doLoaderStop(boolean)">doLoaderStop</a>(boolean&nbsp;retain)</pre>
<p class="caution"><strong>This method is deprecated.</strong><br>
<p>Loaders are managed separately from FragmentController</p>
</p>
<p>Stops the loaders, optionally retaining their state. This is useful for keeping the loader state across configuration changes.</p>
<div class="devsite-table-wrapper">
<table class="responsive">
<thead>
<tr>
<th colspan="2">Parameters</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>retain</code></td>
<td width="100%">
<p>When <code>{@code true}</code> , the loaders aren't stopped, but, their instances are retained in a started state</p>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<div><a name="dumpLoaders(java.lang.String, java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[])"></a><a name="dumpLoaders-java.lang.String-java.io.FileDescriptor-java.io.PrintWriter-java.lang.String[]-"></a>
<h3 class="api-name" id="dumpLoaders(java.lang.String,java.io.FileDescriptor,java.io.PrintWriter,java.lang.String[])">dumpLoaders</h3>
<pre class="api-signature no-pretty-print">&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dumpLoaders(java.lang.String,java.io.FileDescriptor,java.io.PrintWriter,java.lang.String[])">dumpLoaders</a>(<a href="/reference/java/lang/String.html">String</a>&nbsp;prefix,&nbsp;<a href="/reference/java/io/FileDescriptor.html">FileDescriptor</a>&nbsp;fd,&nbsp;<a href="/reference/java/io/PrintWriter.html">PrintWriter</a>&nbsp;writer,&nbsp;<a href="/reference/kotlin/Array.html">Array</a>&lt;<a href="/reference/java/lang/String.html">String</a>&gt;&nbsp;args)</pre>
<p class="caution"><strong>This method is deprecated.</strong><br>
<p>Loaders are managed separately from FragmentController</p>
</p>
<p>Dumps the current state of the loaders.</p>
</div>
<div><a name="execPendingActions--"></a>
<h3 class="api-name" id="execPendingActions()">execPendingActions</h3>
<pre class="api-signature no-pretty-print">&nbsp;boolean&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#execPendingActions()">execPendingActions</a>()</pre>
<p>
<p>Execute any pending actions for the Fragments managed by the controller's FragmentManager. </p>
<p>Call when queued actions can be performed [eg when the Fragment moves into a start or resume state].</p>
</p>
<div class="devsite-table-wrapper">
<table class="responsive">
<thead>
<tr>
<th colspan="2">Returns</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>boolean</code></td>
<td width="100%">
<p><code>{@code true}</code> if queued actions were performed</p>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<div><a name="findFragmentByWho-java.lang.String-"></a>
<h3 class="api-name" id="findFragmentByWho(java.lang.String)">findFragmentByWho</h3>
<pre class="api-signature no-pretty-print">&nbsp;<a href="/reference/androidx/fragment/app/Fragment.html">Fragment</a>&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#findFragmentByWho(java.lang.String)">findFragmentByWho</a>(<a href="/reference/java/lang/String.html">String</a>&nbsp;who)</pre>
<p>Returns a fragment with the given identifier.</p>
</div>
<div><a name="getActiveFragments-java.util.List&lt;androidx.fragment.app.Fragment&gt;-"></a>
<h3 class="api-name" id="getActiveFragments(java.util.List&lt;androidx.fragment.app.Fragment&gt;)">getActiveFragments</h3>
<pre class="api-signature no-pretty-print">&nbsp;<a href="/reference/java/util/List.html">List</a>&lt;<a href="/reference/androidx/fragment/app/Fragment.html">Fragment</a>&gt;&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#getActiveFragments(java.util.List&lt;androidx.fragment.app.Fragment&gt;)">getActiveFragments</a>(<a href="/reference/java/util/List.html">List</a>&lt;<a href="/reference/androidx/fragment/app/Fragment.html">Fragment</a>&gt;&nbsp;actives)</pre>
<p>Returns the list of active fragments.</p>
</div>
<div><a name="getActiveFragmentsCount--"></a>
<h3 class="api-name" id="getActiveFragmentsCount()">getActiveFragmentsCount</h3>
<pre class="api-signature no-pretty-print">&nbsp;int&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#getActiveFragmentsCount()">getActiveFragmentsCount</a>()</pre>
<p>Returns the number of active fragments.</p>
</div>
<div><a name="getSupportFragmentManager--"></a>
<h3 class="api-name" id="getSupportFragmentManager()">getSupportFragmentManager</h3>
<pre class="api-signature no-pretty-print">&nbsp;<a href="/reference/androidx/fragment/app/FragmentManager.html">FragmentManager</a>&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#getSupportFragmentManager()">getSupportFragmentManager</a>()</pre>
<p>Returns a <code><a href="/reference/androidx/fragment/app/FragmentManager.html">FragmentManager</a></code> for this controller.</p>
</div>
<div><a name="getSupportLoaderManager--"></a>
<h3 class="api-name" id="getSupportLoaderManager()">getSupportLoaderManager</h3>
<pre class="api-signature no-pretty-print">&nbsp;LoaderManager&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#getSupportLoaderManager()">getSupportLoaderManager</a>()</pre>
<p class="caution"><strong>This method is deprecated.</strong><br>
<p>Loaders are managed separately from FragmentController and this now throws an <code><a href="/reference/java/lang/UnsupportedOperationException.html">UnsupportedOperationException</a></code> . Use to obtain a LoaderManager.</p>
</p>
<p>Returns a .</p>
<div class="devsite-table-wrapper">
<table class="responsive">
<thead>
<tr>
<th colspan="2">See also</th>
</tr>
</thead>
<tbody>
<tr>
<td><code><a href="/reference/androidx/loader/app/LoaderManager.html#getInstance">LoaderManager</a></code></td>
<td width="100%">
<p></p>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<div><a name="noteStateNotSaved--"></a>
<h3 class="api-name" id="noteStateNotSaved()">noteStateNotSaved</h3>
<pre class="api-signature no-pretty-print">&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#noteStateNotSaved()">noteStateNotSaved</a>()</pre>
<p>Marks the fragment state as unsaved. This allows for &quot;state loss&quot; detection.</p>
</div>
<div><a name="onCreateView(android.view.View, java.lang.String, android.content.Context, android.util.AttributeSet)"></a><a name="onCreateView-android.view.View-java.lang.String-android.content.Context-android.util.AttributeSet-"></a>
<h3 class="api-name" id="onCreateView(android.view.View,java.lang.String,android.content.Context,android.util.AttributeSet)">onCreateView</h3>
<pre class="api-signature no-pretty-print">&nbsp;View&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#onCreateView(android.view.View,java.lang.String,android.content.Context,android.util.AttributeSet)">onCreateView</a>(View&nbsp;parent,&nbsp;<a href="/reference/java/lang/String.html">String</a>&nbsp;name,&nbsp;Context&nbsp;context,&nbsp;AttributeSet&nbsp;attrs)</pre>
<p>Instantiates a Fragment's view.</p>
<div class="devsite-table-wrapper">
<table class="responsive">
<thead>
<tr>
<th colspan="2">Returns</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>View</code></td>
<td width="100%">
<p>view the newly created view</p>
</td>
</tr>
</tbody>
</table>
</div>
<div class="devsite-table-wrapper">
<table class="responsive">
<thead>
<tr>
<th colspan="2">Parameters</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>parent</code></td>
<td width="100%">
<p>The parent that the created view will be placed in; <em>note that this may be null</em>.</p>
</td>
</tr>
<tr>
<td><code>name</code></td>
<td width="100%">
<p>Tag name to be inflated.</p>
</td>
</tr>
<tr>
<td><code>context</code></td>
<td width="100%">
<p>The context the view is being created in.</p>
</td>
</tr>
<tr>
<td><code>attrs</code></td>
<td width="100%">
<p>Inflation attributes as specified in XML file.</p>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<div><a name="reportLoaderStart--"></a>
<h3 class="api-name" id="reportLoaderStart()">reportLoaderStart</h3>
<pre class="api-signature no-pretty-print">&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#reportLoaderStart()">reportLoaderStart</a>()</pre>
<p class="caution"><strong>This method is deprecated.</strong><br>
<p>Loaders are managed separately from FragmentController</p>
</p>
<p>Lets the loaders know the host is ready to receive notifications.</p>
</div>
<div><a name="restoreAllState(android.os.Parcelable, java.util.List&lt;androidx.fragment.app.Fragment&gt;)"></a><a name="restoreAllState-android.os.Parcelable-java.util.List&lt;androidx.fragment.app.Fragment&gt;-"></a>
<h3 class="api-name" id="restoreAllState(android.os.Parcelable,java.util.List&lt;androidx.fragment.app.Fragment&gt;)">restoreAllState</h3>
<pre class="api-signature no-pretty-print">&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#restoreAllState(android.os.Parcelable,java.util.List&lt;androidx.fragment.app.Fragment&gt;)">restoreAllState</a>(Parcelable&nbsp;state,&nbsp;<a href="/reference/java/util/List.html">List</a>&lt;<a href="/reference/androidx/fragment/app/Fragment.html">Fragment</a>&gt;&nbsp;nonConfigList)</pre>
<p class="caution"><strong>This method is deprecated.</strong><br>
<p>Have your <code><a href="/reference/androidx/fragment/app/FragmentHostCallback.html">FragmentHostCallback</a></code> implement to automatically restore the Fragment's non configuration state and use <code><a href="/reference/androidx/fragment/app/FragmentController.html#restoreSaveState(android.os.Parcelable)">restoreSaveState</a></code> to restore the Fragment's save state.</p>
</p>
<p>Restores the saved state for all Fragments. The given Fragment list are Fragment instances retained across configuration changes.</p>
</div>
<div><a name="restoreAllState(android.os.Parcelable, androidx.fragment.app.FragmentManagerNonConfig)"></a><a name="restoreAllState-android.os.Parcelable-androidx.fragment.app.FragmentManagerNonConfig-"></a>
<h3 class="api-name" id="restoreAllState(android.os.Parcelable,androidx.fragment.app.FragmentManagerNonConfig)">restoreAllState</h3>
<pre class="api-signature no-pretty-print">&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#restoreAllState(android.os.Parcelable,androidx.fragment.app.FragmentManagerNonConfig)">restoreAllState</a>(Parcelable&nbsp;state,&nbsp;<a href="/reference/androidx/fragment/app/FragmentManagerNonConfig.html">FragmentManagerNonConfig</a>&nbsp;nonConfig)</pre>
<p class="caution"><strong>This method is deprecated.</strong><br>
<p>Have your <code><a href="/reference/androidx/fragment/app/FragmentHostCallback.html">FragmentHostCallback</a></code> implement to automatically restore the Fragment's non configuration state and use <code><a href="/reference/androidx/fragment/app/FragmentController.html#restoreSaveState(android.os.Parcelable)">restoreSaveState</a></code> to restore the Fragment's save state.</p>
</p>
<p>Restores the saved state for all Fragments. The given FragmentManagerNonConfig are Fragment instances retained across configuration changes, including nested fragments</p>
</div>
<div><a name="restoreLoaderNonConfig-androidx.collection.SimpleArrayMap&lt;java.lang.String,androidx.loader.app.LoaderManager&gt;-"></a>
<h3 class="api-name" id="restoreLoaderNonConfig(androidx.collection.SimpleArrayMap&lt;java.lang.String,androidx.loader.app.LoaderManager&gt;)">restoreLoaderNonConfig</h3>
<pre class="api-signature no-pretty-print">&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#restoreLoaderNonConfig(androidx.collection.SimpleArrayMap&lt;java.lang.String,androidx.loader.app.LoaderManager&gt;)">restoreLoaderNonConfig</a>(SimpleArrayMap&lt;String, LoaderManager&gt;&nbsp;loaderManagers)</pre>
<p class="caution"><strong>This method is deprecated.</strong><br>
<p>Loaders are managed separately from FragmentController</p>
</p>
<p>Restores the saved state for all LoaderManagers. The given LoaderManager list are LoaderManager instances retained across configuration changes.</p>
<div class="devsite-table-wrapper">
<table class="responsive">
<thead>
<tr>
<th colspan="2">See also</th>
</tr>
</thead>
<tbody>
<tr>
<td><code><a href="/reference/androidx/fragment/app/FragmentController.html#retainLoaderNonConfig()">retainLoaderNonConfig</a></code></td>
<td width="100%"><code><a href="/reference/androidx/fragment/app/FragmentController.html#retainLoaderNonConfig()">retainLoaderNonConfig</a></code></td>
</tr>
</tbody>
</table>
</div>
</div>
<div><a name="restoreSaveState-android.os.Parcelable-"></a>
<h3 class="api-name" id="restoreSaveState(android.os.Parcelable)">restoreSaveState</h3>
<pre class="api-signature no-pretty-print">&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#restoreSaveState(android.os.Parcelable)">restoreSaveState</a>(Parcelable&nbsp;state)</pre>
<p>Restores the saved state for all Fragments.</p>
<div class="devsite-table-wrapper">
<table class="responsive">
<thead>
<tr>
<th colspan="2">Parameters</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>state</code></td>
<td width="100%">
<p>the saved state containing the Parcelable returned by <code><a href="/reference/androidx/fragment/app/FragmentController.html#saveAllState()">saveAllState</a></code></p>
</td>
</tr>
</tbody>
</table>
</div>
<div class="devsite-table-wrapper">
<table class="responsive">
<thead>
<tr>
<th colspan="2">See also</th>
</tr>
</thead>
<tbody>
<tr>
<td><code><a href="/reference/androidx/fragment/app/FragmentController.html#saveAllState()">saveAllState</a></code></td>
<td width="100%"><code><a href="/reference/androidx/fragment/app/FragmentController.html#saveAllState()">saveAllState</a></code></td>
</tr>
</tbody>
</table>
</div>
</div>
<div><a name="retainLoaderNonConfig--"></a>
<h3 class="api-name" id="retainLoaderNonConfig()">retainLoaderNonConfig</h3>
<pre class="api-signature no-pretty-print">&nbsp;SimpleArrayMap&lt;String, LoaderManager&gt;&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#retainLoaderNonConfig()">retainLoaderNonConfig</a>()</pre>
<p class="caution"><strong>This method is deprecated.</strong><br>
<p>Loaders are managed separately from FragmentController</p>
</p>
<p>Returns a list of LoaderManagers that have opted to retain their instance across configuration changes.</p>
</div>
<div><a name="retainNestedNonConfig--"></a>
<h3 class="api-name" id="retainNestedNonConfig()">retainNestedNonConfig</h3>
<pre class="api-signature no-pretty-print">&nbsp;<a href="/reference/androidx/fragment/app/FragmentManagerNonConfig.html">FragmentManagerNonConfig</a>&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#retainNestedNonConfig()">retainNestedNonConfig</a>()</pre>
<p class="caution"><strong>This method is deprecated.</strong><br>
<p>Have your <code><a href="/reference/androidx/fragment/app/FragmentHostCallback.html">FragmentHostCallback</a></code> implement to automatically retain the Fragment's non configuration state.</p>
</p>
<p>Returns a nested tree of Fragments that have opted to retain their instance across configuration changes.</p>
</div>
<div><a name="retainNonConfig--"></a>
<h3 class="api-name" id="retainNonConfig()">retainNonConfig</h3>
<pre class="api-signature no-pretty-print">&nbsp;<a href="/reference/java/util/List.html">List</a>&lt;<a href="/reference/androidx/fragment/app/Fragment.html">Fragment</a>&gt;&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#retainNonConfig()">retainNonConfig</a>()</pre>
<p class="caution"><strong>This method is deprecated.</strong><br>
<p>Have your <code><a href="/reference/androidx/fragment/app/FragmentHostCallback.html">FragmentHostCallback</a></code> implement to automatically retain the Fragment's non configuration state.</p>
</p>
<p>Returns a list of Fragments that have opted to retain their instance across configuration changes.</p>
</div>
<div><a name="saveAllState--"></a>
<h3 class="api-name" id="saveAllState()">saveAllState</h3>
<pre class="api-signature no-pretty-print">&nbsp;Parcelable&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#saveAllState()">saveAllState</a>()</pre>
<p>Saves the state for all Fragments.</p>
<div class="devsite-table-wrapper">
<table class="responsive">
<thead>
<tr>
<th colspan="2">See also</th>
</tr>
</thead>
<tbody>
<tr>
<td><code><a href="/reference/androidx/fragment/app/FragmentController.html#restoreSaveState(android.os.Parcelable)">restoreSaveState</a></code></td>
<td width="100%"><code><a href="/reference/androidx/fragment/app/FragmentController.html#restoreSaveState(android.os.Parcelable)">restoreSaveState</a></code></td>
</tr>
</tbody>
</table>
</div>
</div>
</body>
</html>