title: Up navigation reloads loader but back navigation doesn't
body: <p>I am using an AsyncTaskLoader to load data into an ArrayList coming from an HTTPRequest. Once loaded, data is displayed via recycler view as a list. When I click on an item of the list, an activity B gets triggered showing a detailed screen for that data. Then, I have two options to come back to the list, one is via back button (phone), and the other is via the up button <strong>&lt;-</strong> on the toolbar since avtivity B it has <code>android.support.PARENT_ACTIVITY</code>implemented.</p>
  
  <p>Well, back button doesn't trigger the loader, but upbutton reloads the whole thing.  What is going on?  I want both to behave the same, that is, not reload as I specify in <code>onStartLoading()</code>.</p>
  
  <p>This is my AsynTask loader which is called as usual, by implementing the <code>LoaderCallbacks&lt;List&lt;T&gt;&gt;</code> interface</p>
  
  <pre><code>public class FallaLoader extends AsyncTaskLoader&lt;List&lt;Falla&gt;&gt; {
  private String mUrl;
  private List&lt;Falla&gt; mFalla;
  
  FallaLoader(Context context, String url)
  {
      super(context);
      mUrl = url;
  }
  @Override
  protected void onStartLoading()
  {
      if (mFalla == null) {
          // we have no data, so kick off loading
          forceLoad();
      }
      else {
          // use cached data, fallas won't change for a year, so... just needed everytime I start
          deliverResult(mFalla);
      }
  }
  
  // This happens in the Background thread
  @Override
  public List&lt;Falla&gt; loadInBackground()
  {
      if (mUrl == null)
      {
          return null;
      }
      // Perform the network request, parse the response, and extract a list of earthquakes.
      // pass the context since it will be needed to get the preferences
      return Utils.fetchFallasData(mUrl, getContext());
  }
  
  @Override
  public void deliverResult(List&lt;Falla&gt; data)
  {
      // We’ll save the data for later retrieval
      mFalla = data;
      super.deliverResult(data);
  }}
  </code></pre>
  
  <p>In <code>onCreate</code> of Activity A, I have the call to loader like this</p>
  
  <p>`LoaderManager loaderManager = getLoaderManager();
  loaderManager.initLoader(0, null, this);</p>
  
  <p>and then, I implement the interface:</p>
  
  <pre><code>    @Override
  public Loader&lt;List&lt;Falla&gt;&gt; onCreateLoader(int i, Bundle bundle)
  {
      return new FallaLoader(this, F_URL);
  }
  
  @Override
  public void onLoadFinished(Loader&lt;List&lt;Falla&gt;&gt; loader, List&lt;Falla&gt; fallas)
  {
      View loadingIndicator = findViewById(R.id.loading_indicator);
      loadingIndicator.setVisibility(View.GONE);
      mEmptyStateTextView.setText(R.string.no_fallas);
  
      if (fallas != null &amp;&amp; !fallas.isEmpty())
      {
          adapter.swap(fallas);
      }
  }
  
  @Override
  public void onLoaderReset(Loader&lt;List&lt;Falla&gt;&gt; loader) {
  
  }
  </code></pre>
  
  <p>`</p>
  
  <p>Thanks!</p>