title: How can I add rows to a listview asynchronously?
body: <p>I need to populate a long <code>ListView</code> with data from the network, say 2-3 seconds for the entire data collection.  I don't want the user to see a loading <code>Dialog</code> and wait for the entire list download.  Instead I want to update the <code>ListView</code> as each item becomes available.  </p>
  
  <ul>
  <li>How can I do this?</li>
  <li>I presume by adding to the <code>ArrayAdapter</code> from an <code>AsyncTask</code> with <code>OnProgressUpdate</code>?</li>
  <li>Do I have to issue a <code>notifyDatasetChanged()</code> after each added row?</li>
  <li>Is the <code>Fragment</code>/<code>Loader</code> approach better?</li>
  <li>Is there a tutorial or API demo reference implementation for a case
  like this?</li>
  </ul>
  
  <p>It's not important that the data be fetched entirely before the <code>Activity</code> dies (ie <code>Service</code> is unnecessary)</p>