title: FragmentPagerAdapter - Create dynamic content for each fragment
body: <p>I have implement FragmentPagerAdapter in my app but it show only a same list of items for each fragment whenever i swipe. I am using SherlockFragmentActivity and i want to show different non static pages for each fragment whenever i swipe to next or previous fragment in fragment pager.</p>
  
  <p>How can i do so ?</p>
  
  <p>Have i listed a list of contacts without any title of the current fragment so that i could know that this is my contacts fragment in my fragment using this code</p>
  
  <pre><code>public class ContactsFragment extends SherlockListFragment implements LoaderManager.LoaderCallbacks&lt;Cursor&gt;{
  
       // This is the Adapter being used to display the list's data.
      SimpleCursorAdapter mAdapter;
  
      // If non-null, this is the current filter the user has provided.
      String mCurFilter;
  
  
  
      public static Fragment newInstance(Context context){
          ContactsFragment contactFragment = new ContactsFragment();
          return contactFragment;
      }
  
  
      @Override 
      public void onActivityCreated(Bundle savedInstanceState) {
         super.onActivityCreated(savedInstanceState);
  
          // Give some text to display if there is no data.  In a real
          // application this would come from a resource.
         // setEmptyText("No phone numbers");
  
  
          // Create an empty adapter we will use to display the loaded data.
  
          mAdapter = new SimpleCursorAdapter(getActivity(),
                  android.R.layout.simple_list_item_1, null,
                  new String[] {ContactsContract.Contacts.DISPLAY_NAME},
                  new int[] { android.R.id.text1}, 0);
  
  
          setListAdapter(mAdapter);
  
          // Start out with a progress indicator.
          setListShown(true);
  
          // Prepare the loader.  Either re-connect with an existing one,
          // or start a new one.
          getLoaderManager().initLoader(0, null, this);
  
      }
  
  
  
      @Override public void onListItemClick(ListView l, View v, int position, long id) {
          // Insert desired behavior here.
          Log.i("FragmentComplexList", "Item clicked: " + id);
      }
  
      // These are the Contacts rows that we will retrieve.
      static final String[] CONTACTS_SUMMARY_PROJECTION = new String[] {
          ContactsContract.Contacts._ID,
          ContactsContract.Contacts.DISPLAY_NAME,
      };
  
      public Loader&lt;Cursor&gt; onCreateLoader(int id, Bundle args) {
           // This is called when a new Loader needs to be created.  This
          // sample only has one Loader, so we don't care about the ID.
          // First, pick the base URI to use depending on whether we are
          // currently filtering.
          Uri baseUri;
          if (mCurFilter != null) {
              baseUri = Uri.withAppendedPath(ContactsContract.Contacts.CONTENT_FILTER_URI,
                        Uri.encode(mCurFilter));
          } else {
              baseUri = ContactsContract.Contacts.CONTENT_URI;
          }
  
          // Now create and return a CursorLoader that will take care of
          // creating a Cursor for the data being displayed.
          String select = "((" + ContactsContract.Contacts.DISPLAY_NAME + " NOTNULL) AND ("
                  + ContactsContract.Contacts.HAS_PHONE_NUMBER + "=1) AND ("
                  + ContactsContract.Contacts.DISPLAY_NAME + " != '' ))";
          return new CursorLoader(getActivity(), baseUri,
                  CONTACTS_SUMMARY_PROJECTION, select, null,
                  ContactsContract.Contacts.DISPLAY_NAME + " COLLATE LOCALIZED ASC");
      }
  
      public void onLoadFinished(Loader&lt;Cursor&gt; loader, Cursor data) {
          // Swap the new cursor in.  (The framework will take care of closing the
          // old cursor once we return.)
          mAdapter.swapCursor(data);
  
          // The list should now be shown.
          if (isResumed()) {
              setListShown(true);
          } else {
              setListShownNoAnimation(true);
          }
      }
  
      public void onLoaderReset(Loader&lt;Cursor&gt; loader) {
          // This is called when the last Cursor provided to onLoadFinished()
          // above is about to be closed.  We need to make sure we are no
          // longer using it.
          mAdapter.swapCursor(null);
      }
  
  
  }
  </code></pre>
  
  <p>But I want to show tile above the contact list. For this i put two more methods in my fragment class which i have listed below</p>
  
  <pre><code>@Override
      public void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
  
      }
  
      @Override
      public View onCreateView(LayoutInflater inflater, ViewGroup container,
              Bundle savedInstanceState) {
          View v = inflater.inflate(R.layout.fragment_pager_list, container, false);
          View tv = v.findViewById(R.id.text);
          ((TextView)tv).setText("Contacts");
          return v;
      }
  </code></pre>
  
  <p>But when i run my app " Your app stopped unexpetedly" this popup mesage is come.</p>
  
  <p>Without these methods my app is working fine but without any title of fragment. Whats wrong with it?</p>