AnalogClock时钟
一、AnalogClock时钟显示时间
protected static final int GUINOTIFIER = 0x1234;private TextView mTextView;public AnalogClock mAnalogClock;public Calendar mCalendar;public int mMinutes;public int mHour;public Handler mHandler;private Thread mClockThread;public void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.clock);mTextView = (TextView) findViewById(R.id.myTextView);mAnalogClock = (AnalogClock) findViewById(R.id.myAnalogClock);mHandler = new Handler() {public void handleMessage(Message msg) {switch (msg.what) {case Clock.GUINOTIFIER:mTextView.setText(mHour + " : " + mMinutes);break;}super.handleMessage(msg);}};mClockThread = new LooperThread();mClockThread.start();}class LooperThread extends Thread {public void run() {super.run();try {do { long time = System.currentTimeMillis();final Calendar mCalendar = Calendar.getInstance();mCalendar.setTimeInMillis(time);mHour = mCalendar.get(Calendar.HOUR);mMinutes = mCalendar.get(Calendar.MINUTE);Thread.sleep(1000);Message m = new Message();m.what = Clock.GUINOTIFIER;Clock.this.mHandler.sendMessage(m);} while (Clock.LooperThread.interrupted() == false); /* 当系统发出中断讯息时停止本循环 */} catch (Exception e) {e.printStackTrace();}}}?