, . , , , AsyncTask, , onProgressUpdate.
private class AddZonesTask extends AsyncTask<Zone, Zone, Integer> {
protected Integer doInBackground(Zone... zones) {
for (Zone zone : zones) {
Cursor cursor = provider.query( .... );
List<Points> points = cursorToPointsMethod(cursor);
zone.add(points);
publishProgress(zone);
}
return zones.length;
}
protected void onProgressUpdate(Zone... zones) {
drawBorder(zones[0]);
}
protected void onPostExecute(Integer result) { }
}
drawBorder .