<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>
      <pre>public class FragmentController</pre>
    </p>
    <hr>
    <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>
    <h2>Summary</h2>
    <div class="devsite-table-wrapper">
      <table class="responsive">
        <thead>
          <tr>
            <th colspan="2"><h3>Public methods</h3></th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td><code>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 @<a href="/reference/androidx/annotation/NonNull.html">NonNull</a>&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="https://developer.android.com/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>void</code></td>
            <td width="100%">
              <div><code><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchActivityCreated()">dispatchActivityCreated</a>()</code></div>
              <p>Moves all Fragments managed by the controller's FragmentManager into the activity created state.</p>
            </td>
          </tr>
          <tr>
            <td><code>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>Lets all Fragments managed by the controller's FragmentManager know a configuration change occurred.</p>
            </td>
          </tr>
          <tr>
            <td><code>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>Sends a context item selection event to the Fragments managed by the controller's FragmentManager.</p>
            </td>
          </tr>
          <tr>
            <td><code>void</code></td>
            <td width="100%">
              <div><code><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchCreate()">dispatchCreate</a>()</code></div>
              <p>Moves all Fragments managed by the controller's FragmentManager into the create state.</p>
            </td>
          </tr>
          <tr>
            <td><code>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>Lets all Fragments managed by the controller's FragmentManager know they should create an options menu.</p>
            </td>
          </tr>
          <tr>
            <td><code>void</code></td>
            <td width="100%">
              <div><code><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchDestroy()">dispatchDestroy</a>()</code></div>
              <p>Moves Fragments managed by the controller's FragmentManager into the destroy state.</p>
            </td>
          </tr>
          <tr>
            <td><code>void</code></td>
            <td width="100%">
              <div><code><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchDestroyView()">dispatchDestroyView</a>()</code></div>
              <p>Moves all Fragments managed by the controller's FragmentManager into the destroy view state.</p>
            </td>
          </tr>
          <tr>
            <td><code>void</code></td>
            <td width="100%">
              <div><code><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchLowMemory()">dispatchLowMemory</a>()</code></div>
              <p>Lets all Fragments managed by the controller's FragmentManager know the device is in a low memory condition.</p>
            </td>
          </tr>
          <tr>
            <td><code>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>Lets all Fragments managed by the controller's FragmentManager know the multi-window mode of the activity changed.</p>
            </td>
          </tr>
          <tr>
            <td><code>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>Sends an option item selection event to the Fragments managed by the controller's FragmentManager.</p>
            </td>
          </tr>
          <tr>
            <td><code>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>Lets all Fragments managed by the controller's FragmentManager know their options menu has closed.</p>
            </td>
          </tr>
          <tr>
            <td><code>void</code></td>
            <td width="100%">
              <div><code><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchPause()">dispatchPause</a>()</code></div>
              <p>Moves all Fragments managed by the controller's FragmentManager into the pause state.</p>
            </td>
          </tr>
          <tr>
            <td><code>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>Lets all Fragments managed by the controller's FragmentManager know the picture-in-picture mode of the activity changed.</p>
            </td>
          </tr>
          <tr>
            <td><code>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>Lets all Fragments managed by the controller's FragmentManager know they should prepare their options menu for display.</p>
            </td>
          </tr>
          <tr>
            <td><code>void</code></td>
            <td width="100%">
              <div><code><span><del><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchReallyStop()">dispatchReallyStop</a></del></span>()</code></div>
              <p><strong>This method is deprecated.</strong> 
                <p>This functionality has been rolled into <code><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchStop()">dispatchStop</a></code>.</p>
              </p>
            </td>
          </tr>
          <tr>
            <td><code>void</code></td>
            <td width="100%">
              <div><code><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchResume()">dispatchResume</a>()</code></div>
              <p>Moves all Fragments managed by the controller's FragmentManager into the resume state.</p>
            </td>
          </tr>
          <tr>
            <td><code>void</code></td>
            <td width="100%">
              <div><code><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchStart()">dispatchStart</a>()</code></div>
              <p>Moves all Fragments managed by the controller's FragmentManager into the start state.</p>
            </td>
          </tr>
          <tr>
            <td><code>void</code></td>
            <td width="100%">
              <div><code><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchStop()">dispatchStop</a>()</code></div>
              <p>Moves all Fragments managed by the controller's FragmentManager into the stop state.</p>
            </td>
          </tr>
          <tr>
            <td><code>void</code></td>
            <td width="100%">
              <div><code><span><del><a href="/reference/androidx/fragment/app/FragmentController.html#doLoaderDestroy()">doLoaderDestroy</a></del></span>()</code></div>
              <p><strong>This method is deprecated.</strong> 
                <p>Loaders are managed separately from FragmentController</p>
              </p>
            </td>
          </tr>
          <tr>
            <td><code>void</code></td>
            <td width="100%">
              <div><code><span><del><a href="/reference/androidx/fragment/app/FragmentController.html#doLoaderRetain()">doLoaderRetain</a></del></span>()</code></div>
              <p><strong>This method is deprecated.</strong> 
                <p>Loaders are managed separately from FragmentController</p>
              </p>
            </td>
          </tr>
          <tr>
            <td><code>void</code></td>
            <td width="100%">
              <div><code><span><del><a href="/reference/androidx/fragment/app/FragmentController.html#doLoaderStart()">doLoaderStart</a></del></span>()</code></div>
              <p><strong>This method is deprecated.</strong> 
                <p>Loaders are managed separately from FragmentController</p>
              </p>
            </td>
          </tr>
          <tr>
            <td><code>void</code></td>
            <td width="100%">
              <div><code><span><del><a href="/reference/androidx/fragment/app/FragmentController.html#doLoaderStop(boolean)">doLoaderStop</a></del></span>(boolean&nbsp;retain)</code></div>
              <p><strong>This method is deprecated.</strong> 
                <p>Loaders are managed separately from FragmentController</p>
              </p>
            </td>
          </tr>
          <tr>
            <td><code>void</code></td>
            <td width="100%">
              <div><code><span><del><a href="/reference/androidx/fragment/app/FragmentController.html#dumpLoaders(java.lang.String,java.io.FileDescriptor,java.io.PrintWriter,java.lang.String[])">dumpLoaders</a></del></span>(<br>&nbsp;&nbsp;&nbsp;&nbsp;<a href="https://developer.android.com/reference/java/lang/String.html">String</a>&nbsp;prefix,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a href="https://developer.android.com/reference/java/io/FileDescriptor.html">FileDescriptor</a>&nbsp;fd,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a href="https://developer.android.com/reference/java/io/PrintWriter.html">PrintWriter</a>&nbsp;writer,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html">Array</a>&lt;<a href="https://developer.android.com/reference/java/lang/String.html">String</a>&gt;&nbsp;args<br>)</code></div>
              <p><strong>This method is deprecated.</strong> 
                <p>Loaders are managed separately from FragmentController</p>
              </p>
            </td>
          </tr>
          <tr>
            <td><code>boolean</code></td>
            <td width="100%">
              <div><code><a href="/reference/androidx/fragment/app/FragmentController.html#execPendingActions()">execPendingActions</a>()</code></div>
              <p>Execute any pending actions for the Fragments managed by the controller's FragmentManager.</p>
            </td>
          </tr>
          <tr>
            <td><code>@<a href="/reference/androidx/annotation/Nullable.html">Nullable</a>&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="https://developer.android.com/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>@<a href="/reference/androidx/annotation/NonNull.html">NonNull</a>&nbsp;<a href="https://developer.android.com/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="https://developer.android.com/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>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>@<a href="/reference/androidx/annotation/NonNull.html">NonNull</a>&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>LoaderManager</code></td>
            <td width="100%">
              <div><code><span><del><a href="/reference/androidx/fragment/app/FragmentController.html#getSupportLoaderManager()">getSupportLoaderManager</a></del></span>()</code></div>
              <p><strong>This method is deprecated.</strong> 
                <p>Loaders are managed separately from FragmentController and this now throws an <code><a href="https://developer.android.com/reference/java/lang/UnsupportedOperationException.html">UnsupportedOperationException</a></code>.</p>
              </p>
            </td>
          </tr>
          <tr>
            <td><code>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>@<a href="/reference/androidx/annotation/Nullable.html">Nullable</a>&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>(<br>&nbsp;&nbsp;&nbsp;&nbsp;View&nbsp;parent,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a href="https://developer.android.com/reference/java/lang/String.html">String</a>&nbsp;name,<br>&nbsp;&nbsp;&nbsp;&nbsp;Context&nbsp;context,<br>&nbsp;&nbsp;&nbsp;&nbsp;AttributeSet&nbsp;attrs<br>)</code></div>
              <p>Instantiates a Fragment's view.</p>
            </td>
          </tr>
          <tr>
            <td><code>void</code></td>
            <td width="100%">
              <div><code><span><del><a href="/reference/androidx/fragment/app/FragmentController.html#reportLoaderStart()">reportLoaderStart</a></del></span>()</code></div>
              <p><strong>This method is deprecated.</strong> 
                <p>Loaders are managed separately from FragmentController</p>
              </p>
            </td>
          </tr>
          <tr>
            <td><code>void</code></td>
            <td width="100%">
              <div><code><span><del><a href="/reference/androidx/fragment/app/FragmentController.html#restoreAllState(android.os.Parcelable,java.util.List&lt;androidx.fragment.app.Fragment&gt;)">restoreAllState</a></del></span>(Parcelable&nbsp;state,&nbsp;<a href="https://developer.android.com/reference/java/util/List.html">List</a>&lt;<a href="/reference/androidx/fragment/app/Fragment.html">Fragment</a>&gt;&nbsp;nonConfigList)</code></div>
              <p><strong>This method is deprecated.</strong> 
                <p>Have your <code><a href="/reference/androidx/fragment/app/FragmentHostCallback.html">FragmentHostCallback</a></code> implement ViewModelStoreOwner 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>
            </td>
          </tr>
          <tr>
            <td><code>void</code></td>
            <td width="100%">
              <div><code><span><del><a href="/reference/androidx/fragment/app/FragmentController.html#restoreAllState(android.os.Parcelable,androidx.fragment.app.FragmentManagerNonConfig)">restoreAllState</a></del></span>(Parcelable&nbsp;state,&nbsp;<a href="/reference/androidx/fragment/app/FragmentManagerNonConfig.html">FragmentManagerNonConfig</a>&nbsp;nonConfig)</code></div>
              <p><strong>This method is deprecated.</strong> 
                <p>Have your <code><a href="/reference/androidx/fragment/app/FragmentHostCallback.html">FragmentHostCallback</a></code> implement ViewModelStoreOwner 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>
            </td>
          </tr>
          <tr>
            <td><code>void</code></td>
            <td width="100%">
              <div><code><span><del><a href="/reference/androidx/fragment/app/FragmentController.html#restoreLoaderNonConfig(androidx.collection.SimpleArrayMap&lt;java.lang.String,androidx.loader.app.LoaderManager&gt;)">restoreLoaderNonConfig</a></del></span>(<br>&nbsp;&nbsp;&nbsp;&nbsp;SimpleArrayMap&lt;String, LoaderManager&gt;&nbsp;loaderManagers<br>)</code></div>
              <p><strong>This method is deprecated.</strong> 
                <p>Loaders are managed separately from FragmentController</p>
              </p>
            </td>
          </tr>
          <tr>
            <td><code>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>@<a href="/reference/androidx/annotation/Nullable.html">Nullable</a>&nbsp;SimpleArrayMap&lt;String, LoaderManager&gt;</code></td>
            <td width="100%">
              <div><code><span><del><a href="/reference/androidx/fragment/app/FragmentController.html#retainLoaderNonConfig()">retainLoaderNonConfig</a></del></span>()</code></div>
              <p><strong>This method is deprecated.</strong> 
                <p>Loaders are managed separately from FragmentController</p>
              </p>
            </td>
          </tr>
          <tr>
            <td><code>@<a href="/reference/androidx/annotation/Nullable.html">Nullable</a>&nbsp;<a href="/reference/androidx/fragment/app/FragmentManagerNonConfig.html">FragmentManagerNonConfig</a></code></td>
            <td width="100%">
              <div><code><span><del><a href="/reference/androidx/fragment/app/FragmentController.html#retainNestedNonConfig()">retainNestedNonConfig</a></del></span>()</code></div>
              <p><strong>This method is deprecated.</strong> 
                <p>Have your <code><a href="/reference/androidx/fragment/app/FragmentHostCallback.html">FragmentHostCallback</a></code> implement ViewModelStoreOwner to automatically retain the Fragment's non configuration state.</p>
              </p>
            </td>
          </tr>
          <tr>
            <td><code>@<a href="/reference/androidx/annotation/Nullable.html">Nullable</a>&nbsp;<a href="https://developer.android.com/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><span><del><a href="/reference/androidx/fragment/app/FragmentController.html#retainNonConfig()">retainNonConfig</a></del></span>()</code></div>
              <p><strong>This method is deprecated.</strong> 
                <p>Have your <code><a href="/reference/androidx/fragment/app/FragmentHostCallback.html">FragmentHostCallback</a></code> implement ViewModelStoreOwner to automatically retain the Fragment's non configuration state.</p>
              </p>
            </td>
          </tr>
          <tr>
            <td><code>@<a href="/reference/androidx/annotation/Nullable.html">Nullable</a>&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">public&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">@<a href="/reference/androidx/annotation/NonNull.html">NonNull</a><br>public&nbsp;static&nbsp;@<a href="/reference/androidx/annotation/NonNull.html">NonNull</a>&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="https://developer.android.com/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">public&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchActivityCreated()">dispatchActivityCreated</a>()</pre>
      <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>
      <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%">
                <p>Fragment#onActivityCreated(Bundle)</p>
              </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">public&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchConfigurationChanged(android.content.res.Configuration)">dispatchConfigurationChanged</a>(Configuration&nbsp;newConfig)</pre>
      <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>
      <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%">
                <p>androidx.fragment.app.Fragment#onConfigurationChanged(Configuration)</p>
              </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">public&nbsp;boolean&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchContextItemSelected(android.view.MenuItem)">dispatchContextItemSelected</a>(MenuItem&nbsp;item)</pre>
      <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>
      <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%">
                <p>androidx.fragment.app.Fragment#onContextItemSelected(MenuItem)</p>
              </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">public&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchCreate()">dispatchCreate</a>()</pre>
      <p>Moves all Fragments managed by the controller's FragmentManager into the create state. </p>
      <p>Call when Fragments should be created.</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%">
                <p>Fragment#onCreate(Bundle)</p>
              </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">public&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>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>
      <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%">
                <p>androidx.fragment.app.Fragment#onCreateOptionsMenu(Menu, MenuInflater)</p>
              </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">public&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchDestroy()">dispatchDestroy</a>()</pre>
      <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">androidx.fragment.app.FragmentHostCallback</a></code> is an instance of ViewModelStoreOwner, then retained Fragments and any other non configuration state such as any androidx.lifecycle.ViewModel attached to Fragments will only be destroyed if clear 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">host's</a></code> Context is an Activity and if Activity#isChangingConfigurations() returns true. In only that case will non configuration state be retained. </p>
      <p>Call when Fragments should be destroyed.</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%">
                <p>androidx.fragment.app.Fragment#onDestroy()</p>
              </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">public&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchDestroyView()">dispatchDestroyView</a>()</pre>
      <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>
      <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%">
                <p>androidx.fragment.app.Fragment#onDestroyView()</p>
              </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">public&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchLowMemory()">dispatchLowMemory</a>()</pre>
      <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>
      <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%">
                <p>androidx.fragment.app.Fragment#onLowMemory()</p>
              </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">public&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchMultiWindowModeChanged(boolean)">dispatchMultiWindowModeChanged</a>(boolean&nbsp;isInMultiWindowMode)</pre>
      <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>
      <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%">
                <p>androidx.fragment.app.Fragment#onMultiWindowModeChanged</p>
              </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">public&nbsp;boolean&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchOptionsItemSelected(android.view.MenuItem)">dispatchOptionsItemSelected</a>(MenuItem&nbsp;item)</pre>
      <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>
      <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%">
                <p>androidx.fragment.app.Fragment#onOptionsItemSelected(MenuItem)</p>
              </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">public&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchOptionsMenuClosed(android.view.Menu)">dispatchOptionsMenuClosed</a>(Menu&nbsp;menu)</pre>
      <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>
      <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%">
                <p>androidx.fragment.app.Fragment#onOptionsMenuClosed(Menu)</p>
              </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">public&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchPause()">dispatchPause</a>()</pre>
      <p>Moves all Fragments managed by the controller's FragmentManager into the pause state. </p>
      <p>Call when Fragments should be paused.</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%">
                <p>androidx.fragment.app.Fragment#onPause()</p>
              </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">public&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchPictureInPictureModeChanged(boolean)">dispatchPictureInPictureModeChanged</a>(boolean&nbsp;isInPictureInPictureMode)</pre>
      <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>
      <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%">
                <p>androidx.fragment.app.Fragment#onPictureInPictureModeChanged</p>
              </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">public&nbsp;boolean&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchPrepareOptionsMenu(android.view.Menu)">dispatchPrepareOptionsMenu</a>(Menu&nbsp;menu)</pre>
      <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>
      <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%">
                <p>androidx.fragment.app.Fragment#onPrepareOptionsMenu(Menu)</p>
              </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">public&nbsp;void&nbsp;<span><del><a href="/reference/androidx/fragment/app/FragmentController.html#dispatchReallyStop()">dispatchReallyStop</a></del></span>()</pre>
      <aside 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>
      </aside>
    </div>
    <div><a name="dispatchResume--"></a>
      <h3 class="api-name" id="dispatchResume()">dispatchResume</h3>
      <pre class="api-signature no-pretty-print">public&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchResume()">dispatchResume</a>()</pre>
      <p>Moves all Fragments managed by the controller's FragmentManager into the resume state. </p>
      <p>Call when Fragments should be resumed.</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%">
                <p>androidx.fragment.app.Fragment#onResume()</p>
              </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">public&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchStart()">dispatchStart</a>()</pre>
      <p>Moves all Fragments managed by the controller's FragmentManager into the start state. </p>
      <p>Call when Fragments should be started.</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%">
                <p>androidx.fragment.app.Fragment#onStart()</p>
              </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">public&nbsp;void&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#dispatchStop()">dispatchStop</a>()</pre>
      <p>Moves all Fragments managed by the controller's FragmentManager into the stop state. </p>
      <p>Call when Fragments should be stopped.</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%">
                <p>androidx.fragment.app.Fragment#onStop()</p>
              </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">public&nbsp;void&nbsp;<span><del><a href="/reference/androidx/fragment/app/FragmentController.html#doLoaderDestroy()">doLoaderDestroy</a></del></span>()</pre>
      <aside class="caution"><strong>This method is deprecated.</strong><br>
        <p>Loaders are managed separately from FragmentController</p>
      </aside>
      <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">public&nbsp;void&nbsp;<span><del><a href="/reference/androidx/fragment/app/FragmentController.html#doLoaderRetain()">doLoaderRetain</a></del></span>()</pre>
      <aside class="caution"><strong>This method is deprecated.</strong><br>
        <p>Loaders are managed separately from FragmentController</p>
      </aside>
      <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">public&nbsp;void&nbsp;<span><del><a href="/reference/androidx/fragment/app/FragmentController.html#doLoaderStart()">doLoaderStart</a></del></span>()</pre>
      <aside class="caution"><strong>This method is deprecated.</strong><br>
        <p>Loaders are managed separately from FragmentController</p>
      </aside>
      <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">public&nbsp;void&nbsp;<span><del><a href="/reference/androidx/fragment/app/FragmentController.html#doLoaderStop(boolean)">doLoaderStop</a></del></span>(boolean&nbsp;retain)</pre>
      <aside class="caution"><strong>This method is deprecated.</strong><br>
        <p>Loaders are managed separately from FragmentController</p>
      </aside>
      <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>boolean&nbsp;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">public&nbsp;void&nbsp;<span><del><a href="/reference/androidx/fragment/app/FragmentController.html#dumpLoaders(java.lang.String,java.io.FileDescriptor,java.io.PrintWriter,java.lang.String[])">dumpLoaders</a></del></span>(<br>&nbsp;&nbsp;&nbsp;&nbsp;<a href="https://developer.android.com/reference/java/lang/String.html">String</a>&nbsp;prefix,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a href="https://developer.android.com/reference/java/io/FileDescriptor.html">FileDescriptor</a>&nbsp;fd,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a href="https://developer.android.com/reference/java/io/PrintWriter.html">PrintWriter</a>&nbsp;writer,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/index.html">Array</a>&lt;<a href="https://developer.android.com/reference/java/lang/String.html">String</a>&gt;&nbsp;args<br>)</pre>
      <aside class="caution"><strong>This method is deprecated.</strong><br>
        <p>Loaders are managed separately from FragmentController</p>
      </aside>
      <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">public&nbsp;boolean&nbsp;<a href="/reference/androidx/fragment/app/FragmentController.html#execPendingActions()">execPendingActions</a>()</pre>
      <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>
      <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">@<a href="/reference/androidx/annotation/Nullable.html">Nullable</a><br>public&nbsp;@<a href="/reference/androidx/annotation/Nullable.html">Nullable</a>&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="https://developer.android.com/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">@<a href="/reference/androidx/annotation/NonNull.html">NonNull</a><br>public&nbsp;@<a href="/reference/androidx/annotation/NonNull.html">NonNull</a>&nbsp;<a href="https://developer.android.com/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="https://developer.android.com/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">public&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">@<a href="/reference/androidx/annotation/NonNull.html">NonNull</a><br>public&nbsp;@<a href="/reference/androidx/annotation/NonNull.html">NonNull</a>&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">public&nbsp;LoaderManager&nbsp;<span><del><a href="/reference/androidx/fragment/app/FragmentController.html#getSupportLoaderManager()">getSupportLoaderManager</a></del></span>()</pre>
      <aside class="caution"><strong>This method is deprecated.</strong><br>
        <p>Loaders are managed separately from FragmentController and this now throws an <code><a href="https://developer.android.com/reference/java/lang/UnsupportedOperationException.html">UnsupportedOperationException</a></code>. Use LoaderManager#getInstance to obtain a LoaderManager.</p>
      </aside>
      <p>Returns a LoaderManager.</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>androidx.loader.app.LoaderManager#getInstance</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">public&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">@<a href="/reference/androidx/annotation/Nullable.html">Nullable</a><br>public&nbsp;@<a href="/reference/androidx/annotation/Nullable.html">Nullable</a>&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>(<br>&nbsp;&nbsp;&nbsp;&nbsp;View&nbsp;parent,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a href="https://developer.android.com/reference/java/lang/String.html">String</a>&nbsp;name,<br>&nbsp;&nbsp;&nbsp;&nbsp;Context&nbsp;context,<br>&nbsp;&nbsp;&nbsp;&nbsp;AttributeSet&nbsp;attrs<br>)</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>@<a href="/reference/androidx/annotation/Nullable.html">Nullable</a>&nbsp;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>View&nbsp;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><a href="https://developer.android.com/reference/java/lang/String.html">String</a>&nbsp;name</code></td>
              <td width="100%">
                <p>Tag name to be inflated.</p>
              </td>
            </tr>
            <tr>
              <td><code>Context&nbsp;context</code></td>
              <td width="100%">
                <p>The context the view is being created in.</p>
              </td>
            </tr>
            <tr>
              <td><code>AttributeSet&nbsp;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">public&nbsp;void&nbsp;<span><del><a href="/reference/androidx/fragment/app/FragmentController.html#reportLoaderStart()">reportLoaderStart</a></del></span>()</pre>
      <aside class="caution"><strong>This method is deprecated.</strong><br>
        <p>Loaders are managed separately from FragmentController</p>
      </aside>
      <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">public&nbsp;void&nbsp;<span><del><a href="/reference/androidx/fragment/app/FragmentController.html#restoreAllState(android.os.Parcelable,java.util.List&lt;androidx.fragment.app.Fragment&gt;)">restoreAllState</a></del></span>(Parcelable&nbsp;state,&nbsp;<a href="https://developer.android.com/reference/java/util/List.html">List</a>&lt;<a href="/reference/androidx/fragment/app/Fragment.html">Fragment</a>&gt;&nbsp;nonConfigList)</pre>
      <aside 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 ViewModelStoreOwner 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>
      </aside>
      <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">public&nbsp;void&nbsp;<span><del><a href="/reference/androidx/fragment/app/FragmentController.html#restoreAllState(android.os.Parcelable,androidx.fragment.app.FragmentManagerNonConfig)">restoreAllState</a></del></span>(Parcelable&nbsp;state,&nbsp;<a href="/reference/androidx/fragment/app/FragmentManagerNonConfig.html">FragmentManagerNonConfig</a>&nbsp;nonConfig)</pre>
      <aside 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 ViewModelStoreOwner 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>
      </aside>
      <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">public&nbsp;void&nbsp;<span><del><a href="/reference/androidx/fragment/app/FragmentController.html#restoreLoaderNonConfig(androidx.collection.SimpleArrayMap&lt;java.lang.String,androidx.loader.app.LoaderManager&gt;)">restoreLoaderNonConfig</a></del></span>(<br>&nbsp;&nbsp;&nbsp;&nbsp;SimpleArrayMap&lt;String, LoaderManager&gt;&nbsp;loaderManagers<br>)</pre>
      <aside class="caution"><strong>This method is deprecated.</strong><br>
        <p>Loaders are managed separately from FragmentController</p>
      </aside>
      <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%">
                <p>#retainLoaderNonConfig()</p>
              </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">public&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>Parcelable&nbsp;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%">
                <p>#saveAllState()</p>
              </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">@<a href="/reference/androidx/annotation/Nullable.html">Nullable</a><br>public&nbsp;@<a href="/reference/androidx/annotation/Nullable.html">Nullable</a>&nbsp;SimpleArrayMap&lt;String, LoaderManager&gt;&nbsp;<span><del><a href="/reference/androidx/fragment/app/FragmentController.html#retainLoaderNonConfig()">retainLoaderNonConfig</a></del></span>()</pre>
      <aside class="caution"><strong>This method is deprecated.</strong><br>
        <p>Loaders are managed separately from FragmentController</p>
      </aside>
      <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">@<a href="/reference/androidx/annotation/Nullable.html">Nullable</a><br>public&nbsp;@<a href="/reference/androidx/annotation/Nullable.html">Nullable</a>&nbsp;<a href="/reference/androidx/fragment/app/FragmentManagerNonConfig.html">FragmentManagerNonConfig</a>&nbsp;<span><del><a href="/reference/androidx/fragment/app/FragmentController.html#retainNestedNonConfig()">retainNestedNonConfig</a></del></span>()</pre>
      <aside 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 ViewModelStoreOwner to automatically retain the Fragment's non configuration state.</p>
      </aside>
      <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">@<a href="/reference/androidx/annotation/Nullable.html">Nullable</a><br>public&nbsp;@<a href="/reference/androidx/annotation/Nullable.html">Nullable</a>&nbsp;<a href="https://developer.android.com/reference/java/util/List.html">List</a>&lt;<a href="/reference/androidx/fragment/app/Fragment.html">Fragment</a>&gt;&nbsp;<span><del><a href="/reference/androidx/fragment/app/FragmentController.html#retainNonConfig()">retainNonConfig</a></del></span>()</pre>
      <aside 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 ViewModelStoreOwner to automatically retain the Fragment's non configuration state.</p>
      </aside>
      <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">@<a href="/reference/androidx/annotation/Nullable.html">Nullable</a><br>public&nbsp;@<a href="/reference/androidx/annotation/Nullable.html">Nullable</a>&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%">
                <p>#restoreSaveState(Parcelable)</p>
              </td>
            </tr>
          </tbody>
        </table>
      </div>
    </div>
  </body>
</html>
