| |||||||
Das Thema "Android code anhalten (Thread.sleep)" befindet sich unter Android App Entwicklung auf Android-Hilfe.de.
|
| | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer Benutzer Registriert seit: 28.07.2011
Beiträge: 3
Abgegebene Danke: 1
Erhielt 0 Danke für 0 Beiträge
| Ich habe folgendes Problem, ich möchte das UI anzeigen lassen, im Hintergrund läuft ein code, dieser soll aber kurz warten und dann weiter ausgeführt werden. Es handelt sich um ein Spiel, das warten hat den Sinn, dass man sieht was der CPU-Gegner tut. Für den PC hatte ich das ganze schon implementiert. Ohne CPU funktioniert das ganze. Hier mal der Code der für Android nicht funktioniert. Zur übersicht hab ich einiges entfernt. Wenn ich diesen Code ausführe stürzt die App ab. Code: public class Waiter extends Thread {
public Waiter(){
super();
}
public void run(){
//warten für 2 sekunden
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//code weiter ausführen-UI Elemente werden neu gesetzt
}
public void start(){
this.start();
}
} Da ich auch gegoogelt habe bin ich auf Handler, postDelay(), postInvalidate() gestoßen und hab auch einiges versucht aber nichts hat zum erfolg geführt. LG |
| | |
| | #2 (permalink) |
| Neuer Benutzer Registriert seit: 28.07.2011
Beiträge: 3
Abgegebene Danke: 1
Erhielt 0 Danke für 0 Beiträge
|
Ich habe es selbst gelöst, weil ich es doch noch richtig verstanden habe. Code: public Class Waiter{
....
public void run(){
Handler handler = new Handler();
handler.postDelayed(new Runnable() {
public void run() {
//code weiter ausführen
}
}, 2000);
}
...
} |
| | |
| | #3 (permalink) |
| Android Guru Registriert seit: 09.05.2009
Beiträge: 2.389
Abgegebene Danke: 36
Erhielt 307 Danke für 289 Beiträge
|
asynctask ist ne schöne variante für sowas
__________________ App Entwicklung Latest apps: Media Streamer BETA | DailyCash | MoneyManager ( PRO | HD ) |
| | |
| Folgender Benutzer bedankt sich bei swordi für diesen Beitrag: | elTorro (29.07.2011) |
| | #4 (permalink) |
| Neuer Benutzer Registriert seit: 28.07.2011
Beiträge: 3
Abgegebene Danke: 1
Erhielt 0 Danke für 0 Beiträge
|
Hat das einen Vorteil asynctask zu nutzen, wenn ich das richtig verstehe ist das im Grunde als würde man einen Backgroundthread starten, mit dem man trotzdem noch UI manipulationen vornehmen kann, das warten müsste man aber trozdem implementieren. Ich habe eben mal meine Variante daraf getestet, ob die UI noch wärend des warten auf Eingaben reagiert und es scheint so als ginge es. Aber vielleicht treten bei anderen Projekten deswegen Fehlverhalten auf. Immoment reicht das für meine Anforderungen, aber vielleicht lösen wir dadurch Probleme anderer oder Zukünftige Probleme. Danke und LG |
| | |
| | #5 (permalink) |
| Android Guru Registriert seit: 09.05.2009
Beiträge: 2.389
Abgegebene Danke: 36
Erhielt 307 Danke für 289 Beiträge
|
wenn du im UI thread wartest, wird das sicher zu problemen führen.
__________________ App Entwicklung Latest apps: Media Streamer BETA | DailyCash | MoneyManager ( PRO | HD ) |
| | |
![]() |
|
| Themen-Optionen | |
| Ansicht | |
| |
| ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Bild anzeigen vor Thread.sleep() | Lilithian | Android App Entwicklung | 2 | 29.10.2010 11:17 |
| Programm für paar Sekunden anhalten | Chris92 | Android App Entwicklung | 4 | 29.10.2010 03:25 |
| Problem mit Thread.sleep() | egon232 | Android App Entwicklung | 3 | 21.06.2010 13:32 |
| Audio Wiedergabe anhalten und später weiterhören | pbruk | HTC Hero / T-Mobile G2 Touch Forum | 1 | 07.05.2010 11:50 |
| Music Sleep Funktion (Sleep Timer oder Standby Timer) | mstyle83 | Tools | 2 | 30.06.2009 19:58 |