Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

Merging 2 Tutorials: XML Data & ProgressDialog using ASyncTask

DZone's Guide to

Merging 2 Tutorials: XML Data & ProgressDialog using ASyncTask

· Mobile Zone
Free Resource

Discover how to focus on operators for Reactive Programming and how they are essential to react to data in your application.  Brought to you in partnership with Wakanda

This post is just to for fill a request of one of the commentors / commentators ( you get the meaning :-) ). He asked if i could show an example that combines these 2 tutorials:

  1. Android tutorial: How to parse XML to a Android ListView
  2. Android tutorial: How to implement a ProgressDialog

So i started off with the XMLtest code from the 1st tutorial. ( you can download the Eclipse project at the bottom of the XML tutorial ). Its pretty simple to implement a ProgressDialog. Apposed to the original tutorial i will be implementing a ASyncTask.

Quote from official docs:

An asynchronous task is defined by a computation that runs on a background thread and whose result is published on the UI thread. An asynchronous task is defined by 3 generic types, called Params, Progress and Result, and 4 steps, called onPreExecutedoInBackgroundonProgressUpdate and onPostExecute.

Here is an example layout of an ASyncTask.

private class GetDataTask extends AsyncTask<Void, Void, Integer> {

@Override
protected Integer doInBackground(Void... params) {
//do all your backgroundtasks

return 1;
}

@Override
protected void onPostExecute(Integer result) {

//finish up ( or close the progressbar )

//do something with the result

super.onPostExecute(result);
}
}

Here is the official documentation of an ASyncTask.

After you make the ASyncTask you can call it like so:

progressDialog = ProgressDialog.show(Main.this, "Getting data", "Loading...");
new GetDataTask().execute();

If you want to see the full implementation check out the source project.

 

 

Learn how divergent branches can appear in your repository and how to better understand why they are called “branches".  Brought to you in partnership with Wakanda

Topics:

Published at DZone with permission of Mark Mooibroek, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

THE DZONE NEWSLETTER

Dev Resources & Solutions Straight to Your Inbox

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.

X

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}