import android.app.Activity;
import android.os.Bundle;
import android.os.AsyncTask;
+import android.os.Handler;
+import android.os.SystemClock;
import android.util.Log;
import android.view.View;
import android.view.Window;
public class WhereAmI extends Activity
{
+ private TextView tv;
+
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
setContentView(R.layout.main);
+ tv = (TextView)findViewById(R.id.tv);
Log.v("WhereAmI", "created UI, about to start update task");
- new TimedUpdateTask().execute(5);
+ mHandler.postDelayed(updateClock, 2000);
Log.v("WhereAmI", "created UI, update task created");
}
+ private Handler mHandler = new Handler();
+
+ private Runnable updateClock = new Runnable () {
+ public void run() {
+ long millis = System.currentTimeMillis();
+ Log.v("updateClock", "executing");
+ // new TimedUpdateTask().execute(5); // for delayed execution
+ tv.setText(Long.toString(millis));
+ mHandler.postDelayed(this, 2000);
+ }
+ };
+
private class TimedUpdateTask extends AsyncTask<Integer, Void, String> {
@Override
protected String doInBackground(Integer... howlong) {
@Override
protected void onPostExecute(String str) {
- TextView tv = (TextView)findViewById(R.id.tv);
Log.v("TimedUpdateTask", "callback executing");
- tv.append("\n" + str);
+ tv.setText(str);
}
}
}