title: The method getActivity() is undefined for the type DataAdapter
body: <p>I'm trying to use the demo provided by cwac... how ever when I have pulled it in to my fragment I am getting the error "<strong>The method getActivity() is undefined for the type DataAdapter</strong>"</p>
  
  <p>I am sure its a context thing so I have tried a number of ways to refer to the data adaptor as well as making sure the right support files are been imported ( ie v4 ).</p>
  
  <pre><code>import java.util.ArrayList;
  import android.os.AsyncTask;
  import android.os.Bundle;
  import android.os.SystemClock;
  import android.support.v4.app.Fragment;
  import android.support.v4.app.ListFragment;
  import android.support.v4.app.DialogFragment;
  import android.support.v4.app.FragmentManager;
  import android.support.v4.app.FragmentPagerAdapter;
  import android.support.v4.app.FragmentActivity;
  import android.support.v4.app.FragmentTransaction;
  import android.view.LayoutInflater;
  import android.view.View;
  import android.view.ViewGroup;
  import android.view.animation.Animation;
  import android.view.animation.RotateAnimation;
  import android.widget.ArrayAdapter;
  
  import com.commonsware.cwac.endless.EndlessAdapter;
  import com.commonsware.cwac.endless.demo.EndlessAdapterCustomTaskFragment;
  
  public class Fragment2 extends ListFragment {
  
      DataAdapter adapter=null;
      ArrayList&lt;Integer&gt; items=null;
  
      @Override
      public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
          View root = inflater.inflate(R.layout.fragment_dod_events, container, false);
  
          setRetainInstance(true);
  
          if (adapter == null) {
            items=new ArrayList&lt;Integer&gt;();
  
            for (int i=0; i &lt; 25; i++) {
              items.add(i);
            }
  
            adapter=new DataAdapter(items);
            //adapter = new DataAdapter(getActivity(), items);
            adapter.setRunInBackground(false); // Tell the adapter
                                               // we will handle
                                               // starting the
                                               // background task
          } 
  
          setListAdapter(adapter);        
  
          // Do Stuff Here
          return root;
      }
  
      @Override public void onSaveInstanceState(Bundle outState) {
          super.onSaveInstanceState(outState);
          // Save some state!
      }
  }
  
  
  class DataAdapter extends EndlessAdapter implements
  IItemsReadyListener {
      private RotateAnimation rotate=null;
  
      DataAdapter(ArrayList&lt;Integer&gt; list) {
  
          super(new ArrayAdapter&lt;Integer&gt;(getActivity(), R.layout.row,
                  android.R.id.text1, list));
  
          rotate=
                  new RotateAnimation(0f, 360f, Animation.RELATIVE_TO_SELF,
                          0.5f, Animation.RELATIVE_TO_SELF, 0.5f);
          rotate.setDuration(600);
          rotate.setRepeatMode(Animation.RESTART);
          rotate.setRepeatCount(Animation.INFINITE);
      }
  
      @Override
      protected View getPendingView(ViewGroup parent) {
          View row=
                  getActivity().getLayoutInflater().inflate(R.layout.row, null);
  
          View child=row.findViewById(android.R.id.text1);
  
          child.setVisibility(View.GONE);
  
          child=row.findViewById(R.id.throbber);
          child.setVisibility(View.VISIBLE);
          child.startAnimation(rotate);
  
          return(row);
      }
  
      @Override
      protected boolean cacheInBackground() throws Exception {
          new FetchDataTask(this, items.size()).execute();
  
          return(items.size()&lt;75);
      }
  
      @Override
      public void onItemsReady(ArrayList&lt;Integer&gt; data) {
          items.addAll(data);
          adapter.onDataReady(); // Tell the EndlessAdapter to
          // remove it's pending
          // view and call
          // notifyDataSetChanged()
      }
  
      @Override
      protected void appendCachedData() {
      }
  }
  
  interface IItemsReadyListener {
      public void onItemsReady(ArrayList&lt;Integer&gt; data);
  }
  
  class FetchDataTask extends AsyncTask&lt;Void, Void, ArrayList&lt;Integer&gt;&gt; {
      IItemsReadyListener listener;
  
      /*
       * The point from where to start counting. In a real
       * life scenario this could be a pagination number
       */
      int startPoint;
  
      protected FetchDataTask(IItemsReadyListener listener, int startPoint) {
          this.listener=listener;
          this.startPoint=startPoint;
      }
  
      @Override
      protected ArrayList&lt;Integer&gt; doInBackground(Void... params) {
          ArrayList&lt;Integer&gt; result=new ArrayList&lt;Integer&gt;();
  
          SystemClock.sleep(3000); // pretend to do work
          for (int i=startPoint; i &lt; startPoint + 25; i++) {
              result.add(i);
          }
  
          return(result);
      }
  
      @Override
      protected void onPostExecute(ArrayList&lt;Integer&gt; result) {
          listener.onItemsReady(result);
      }
  }
  </code></pre>