M
mister-viper
Neues Mitglied
- 0
Hallo zusammen,
ich übe mich gerade etwas in Androidprogrammierung und habe mir
überlegt, dass ich zum Üben einfach mal ein Programm mit verschiedenen Funktionen schreibe.
Nun zu meinem Problem.
Ich habe eine Activity "Uhrzeit anzeigen" welche über einen Button aus der
MainActivity aufgerufen wird. Diese Activity soll nichts anderes machen, als immer die aktuelle Uhrzeit anzeigen. Also nicht nur die Uhrzeit, als die Activity gestartet wurde, sondern die Uhrzeit soll auch dauernd geupdatet werden (also jede Sekunde).
Das updaten der Uhr realisiere ich in einem extra Thread.
Problem: Wenn die Acitivity aufgerufen wird, wird auch kurz die Uhrzeit anzeigt. Danach stürzt die Activity jedoch ab.
Hier mal mein SourceCode. Kann mir jemand sagen, was ich falsch mache?
ich übe mich gerade etwas in Androidprogrammierung und habe mir
überlegt, dass ich zum Üben einfach mal ein Programm mit verschiedenen Funktionen schreibe.
Nun zu meinem Problem.
Ich habe eine Activity "Uhrzeit anzeigen" welche über einen Button aus der
MainActivity aufgerufen wird. Diese Activity soll nichts anderes machen, als immer die aktuelle Uhrzeit anzeigen. Also nicht nur die Uhrzeit, als die Activity gestartet wurde, sondern die Uhrzeit soll auch dauernd geupdatet werden (also jede Sekunde).
Das updaten der Uhr realisiere ich in einem extra Thread.
Problem: Wenn die Acitivity aufgerufen wird, wird auch kurz die Uhrzeit anzeigt. Danach stürzt die Activity jedoch ab.
Hier mal mein SourceCode. Kann mir jemand sagen, was ich falsch mache?
Code:
public class UhrAnzeigen extends Activity {
TextView time;
Date currentTime;
Thread timeThread = null;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.uhr_anzeigen);
time = (TextView)findViewById(R.id.uhr_id_angezeigteUhrzeit);
timeThread = new Thread(){
public void run(){
while(true){
currentTime = new Date(System.currentTimeMillis());
time.setText(currentTime.toString());
try{
sleep(1000); // update every second
} catch (Exception e){
// nothing
}
}
}
};
timeThread.start();
}
}