X-Git-Url: http://www.average.org/gitweb/?p=WhereAmI.git;a=blobdiff_plain;f=src%2Forg%2Faverage%2Fwhereami%2FWhereAmI.java;h=11867938dfed201f1baca8a0cd6d9f36b6d51766;hp=c74ab2d09e0f758a0e73ef9190beee84d4c01035;hb=a28bb6c7a3376b82a726835bbc36f32031c4b095;hpb=4b9b982f86a201f57cd9c48d8a7246e768a018dc diff --git a/src/org/average/whereami/WhereAmI.java b/src/org/average/whereami/WhereAmI.java index c74ab2d..1186793 100644 --- a/src/org/average/whereami/WhereAmI.java +++ b/src/org/average/whereami/WhereAmI.java @@ -2,14 +2,63 @@ package org.average.whereami; 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; +import android.view.WindowManager; +import android.widget.TextView; public class WhereAmI extends Activity { + private TextView tv; + /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); + requestWindowFeature(Window.FEATURE_NO_TITLE); + 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"); + 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 { + @Override + protected String doInBackground(Integer... howlong) { + Log.v("TimedUpdateTask", "starting"); + try { + Thread.sleep(1000 * howlong[0]); + } catch (InterruptedException e) { + Log.e("TimedUpdateTask", "sleep interrupted"); + } + Log.v("TimedUpdateTask", "about to return"); + return (Integer.toString(howlong[0]) + " seconds passed"); + } + + @Override + protected void onPostExecute(String str) { + Log.v("TimedUpdateTask", "callback executing"); + tv.setText(str); + } } }