Hi
Kennt jemand ein Befehl der z.B sagt 2sec warten und dann gehts erst weiter.
Hi
Kennt jemand ein Befehl der z.B sagt 2sec warten und dann gehts erst weiter.
Du willst den Benutzer 2 Sekunden warten lassen und dabei das Gerät "sperren"?
Wenn ja: das wird nix werden.
Wenn nein: was genau möchtest du stattdessen erreichen?
Ich will das z.B 100 nicht gleich als 100 in einem TextView
erscheint, sondern es hoch gezählt wird(je nach grösse der zahl schneller oder langsamer)
Ich dachte das könnt ich so machen:
for(int i = 0;i>zahl;i++){
Befehl für warten;
TextView.setText(i.toString());
}
(zahl = z.B 100)
Dann schau dir mal AsyncTask an, der ist ideal für sowas.
Dein Code würde dann in doInBackground() zum Einsatz kommen, zusammen mit einem Thread.sleep() für die Verzögerung, und im onPostExecute() startest du dann, was nach deiner "Warteschleife" passieren soll.
ich hab dass probiert: public void delay(){
try {
Thread.sleep(100);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
for(int i = 0;i < Also;i++){
also.setText(String.valueOf(nfc.format(i))); //zahl ausgeben
delay(); //100ml sec warten
}
aber dass hängt dann einfach
(Also ist ein ge parster wert aus einem EditText)
Du kannst in dem Thread nicht direkt auf UI Elemente zugreifen, dafür verwendet man onProgressUpdate()
...was ist "nfc.format()"?
NumberFormat nfc = DecimalFormat.getCurrencyInstance(Locale.GERMANY);
also damit nich 100000.0 sondern 100.000,00€ ausgegeben wird
nfc: hm, ist das Ergebnis dann nicht bereits ein String und dein valueOf() damit überflüssig?
Wegen der Verwendung von AsyncTask schaust du dir vielleicht mal ein Example oder Tutorial an, findet man zuhauf in Internet.
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!