Hallo,
ich habe ein swipeRefreshLayout,
das einen extra thread startet und dort eine Datei runterlädt und verarbeitet...
Allerdings kann ich das refreshing nicht false setzen aus diesem thread, da eine Fehlermeldung kommt, dass nur der originale Thread das kann...
Wenn ich das refreshing allerdings nach dem .start() des threads packe, stoppt das refreshing, obwohl die Methode noch läuft...
wie kann ich das beheben?
Edit: wenn ich vor den Methodenaufruf downloadfile(); die Zeile:
swipeView.setRefreshing(true)setze (auch bei false), bekomme ich keine Fehlermeldung...
ich habe ein swipeRefreshLayout,
das einen extra thread startet und dort eine Datei runterlädt und verarbeitet...
Allerdings kann ich das refreshing nicht false setzen aus diesem thread, da eine Fehlermeldung kommt, dass nur der originale Thread das kann...
Wenn ich das refreshing allerdings nach dem .start() des threads packe, stoppt das refreshing, obwohl die Methode noch läuft...
wie kann ich das beheben?
Code:
swipeView = (SwipeRefreshLayout) rootview.findViewById(R.id.teacherswipe);
swipeView.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
@Override
public void onRefresh() {
//swipeView.setRefreshing(true);
Thread working = new Thread(new Runnable() {
@Override
public void run() {
//in der Methode wird die Datei heruntergeladen
//swipeView.setRefreshing(true);
downloadfile();
Teacher.swipeView.setRefreshing(false);
}
});
working.start();
//swipeView.setRefreshing(false);
}
});
Edit: wenn ich vor den Methodenaufruf downloadfile(); die Zeile:
swipeView.setRefreshing(true)setze (auch bei false), bekomme ich keine Fehlermeldung...
Zuletzt bearbeitet: