Using a thread for that is overkill (not to mention that worker threads are limited in how they interact with the UI).
Just do something like this:
Code:
final Timer t=new Timer();
TimerTask tt=new TimerTask() {
public void run() {
//Set value of the field that displays the timer value here
}
};
t.scheduleAtFixedRate(tt, 1000, 1000);
run will be called every second, so you just set the value you want displayed to whatever UI element you've created for that. Or you can call invalidate() within run, and have a paint routine that simply draws the current timer value (if you want to do the drawing yourself).