Problem mit Thread.sleep()

E

egon232

Ambitioniertes Mitglied
1
Hallo,

wollte gestern abend ein "pseudo Würfel" schreiben, d.h. es werden vor der richtigen Augenanzahl andere angezeigt:

[FONT=&quot]
[/FONT]
Code:
public void onCreate(Bundle  savedInstanceState) {
   super.onCreate(savedInstanceState);
   setContentView(R.layout.main);
   Button bwuerfeln = (Button)findViewById(R.id.wuerfeln);
     ImageButton bwuerfel1 = (ImageButton)findViewById(R.id.wuerfel1);
     bwuerfeln.setOnClickListener(new OnClickListener()  {
            @Override
       public void  onClick(View v) {[INDENT][INDENT]               bwuerfel1.setBackground(getResources().getDrawable(R.drawable.eins);
[/INDENT][/INDENT][INDENT][INDENT] Thread.sleep(500);
[/INDENT][/INDENT][INDENT][INDENT]bwuerfel1.setBackground(getResources().getDrawable(R.drawable.zwei);    
[/INDENT][/INDENT]}
  });
  }
[FONT=&quot]

Wenn ich dann den Button klicke dann wird das erste setBackground nicht ausgeführt sondern 0,5 sekunden gewartet und gleich des zweite..

Weis irgendjemand wie ich des ansonsten umsetzen könnte?

Grüße

sorry code isn bissl verrutscht

[/FONT]
 
ist korrektes verhalten... du stopst den aktuellen thread wohl den UI Thread und somit kann nichts mehr gerendert werden, wenn du den Thread stoppst ;) ist doch ganz klar :D
 
  • Danke
Reaktionen: egon232
Für eine Animation solltest Du einen eigenen Thread starten.
Dieser darf dann warten und kann mit postInvalidate() dem UI Thread sagen,
dass etwas Neues zum Darstellen da ist.
 
  • Danke
Reaktionen: egon232
@MichaelS: klingt irgendwie logisch hehe ;-)

@DieGoldeneMitte: Hättest du zufällig ein codebeispiel? wenn net ist auch net so wild... befrag ich onkel google ;-)

Grüße
 

Ähnliche Themen

S
Antworten
4
Aufrufe
990
Sempervivum
S
B
Antworten
4
Aufrufe
471
bb321
B
R
Antworten
3
Aufrufe
1.614
Ritartet
R
Zurück
Oben Unten