Android ViewPager & AsyncTask im Einklang

  • 2 Antworten
  • Letztes Antwortdatum
D

DiaBloB555

Neues Mitglied
0
Hallo liebe User, ich habe ein Problem damit, einige AsyncTasks in einem ViewPager "ordentlich" zu beenden. Also schildere ich mal meine Idee:

Ich möchte einen ViewPager erstellen mit 4 Seiten, zwischen denen man hin und her scrollen kann. auf jeder seite soll ein eigener AsyncTask gestartet werden, der das aktuelle Fragment aktualisiert. Dieser AsyncTaks soll beedet werden, sobald zu einem anderem Fragment gescrollt wird. Bisher geht alles solange gut, bis man einmal durch alle Fragmente (4) durchscrollt, jedoch bleiben die AsnyTasks danach im onPreExecute hängen, weil zu viele von ihmen parallel laufen. ich habe die Asynctasks in der "public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)" Methode der Klasse "public static class DummySectionFragment extends Fragment" platziert, wodurch bei jeden wechsel der Seite ein neuer Asyntask gestartet wird, dieser wird jedoch nicht beendet, auch habe ich festgestellt, dass die vorgebene Variable "public static final String ARG_SECTION_NUMBER = "section_number" nicht immer die angezeigte Seite wwiedergibt.

hat jemand eine Ahnung, wie man am besten herausfinden kann, auf welcher seite man ist und wie man einen Asynctask stoppen kann, wenn man die Seite wechselt ?
 
Also AsynTask kannst du mit asyncTask.cancel(true) beenden.
Du musst aber in deiner DoInBackground Methode auch das ganze auch abfragen mit isCancelled() und nur wenn das false zurück gibt darfst du deine aktualisierungen machen.

Da du ja aktualiserungen machst vermute ich das du irgendeine Schleife dort laufen hast, also einfach in der Schleife abfragen
if (isCancelled()) {
return;
}
Dann gehst du raus und der AsyncTask beendet sich (onPostExecute wird noch ausgeführt)
 
  • Danke
Reaktionen: DiaBloB555
ok Vielen Dank, werde ich morgen gleich ausprobieren und bericten :)
 

Ähnliche Themen

M
Antworten
21
Aufrufe
1.305
swa00
swa00
Mr-Fisch
Antworten
5
Aufrufe
941
migi01
migi01
Mr-Fisch
Antworten
8
Aufrufe
989
Mr-Fisch
Mr-Fisch
M
Antworten
9
Aufrufe
773
mkuz24
M
A
Antworten
5
Aufrufe
680
swa00
swa00
Zurück
Oben Unten