溫馨提示:您的每一次轉(zhuǎn)載,體現(xiàn)了我寫此文的意義!!!煩請(qǐng)您在轉(zhuǎn)載時(shí)注明出處http://www.aygfsteel.com/sxyx2008/謝謝合作!!!

          雪山飛鵠

          溫馨提示:您的每一次轉(zhuǎn)載,體現(xiàn)了我寫此文的意義!!!煩請(qǐng)您在轉(zhuǎn)載時(shí)注明出處http://www.aygfsteel.com/sxyx2008/謝謝合作!!!

          BlogJava 首頁(yè) 新隨筆 聯(lián)系 聚合 管理
            215 Posts :: 1 Stories :: 674 Comments :: 0 Trackbacks
          需求:在界面上有兩個(gè)按鈕,一個(gè)開始,一個(gè)停止。點(diǎn)擊開始按鈕,更新應(yīng)用的標(biāo)題為當(dāng)前時(shí)間。按停止按鈕停止更新時(shí)間。
          考察:handler的使用。
          這里借助Handler來(lái)實(shí)現(xiàn)
          package com.zhy.ui;

          import java.text.SimpleDateFormat;
          import java.util.Date;

          import android.app.Activity;
          import android.os.Bundle;
          import android.os.Handler;
          import android.os.Message;
          import android.view.View;
          import android.view.View.OnClickListener;
          import android.widget.Button;

          import com.zhy.shortcut.R;

          public class RefershUiActivity extends Activity implements OnClickListener{
              
              private static final int UPDATA_TITIE=1;
              
              Button start;
              Button stop;
              
              //聲明一個(gè)繼承自Runnable的變量
              MyRunnable runnable;
              
              Handler handler;
              
              @Override
              protected void onCreate(Bundle savedInstanceState) {
                  super.onCreate(savedInstanceState);
                  
                  setContentView(R.layout.ui);
                  
                  runnable=new MyRunnable();
                  
                  start=(Button) findViewById(R.id.start);
                  stop=(Button) findViewById(R.id.stop);
                  
                  //實(shí)列化Handler
                  handler=new Handler(){
                      @Override
                      public void handleMessage(Message msg) {
                          super.handleMessage(msg);
                          //更新應(yīng)用標(biāo)題
                          updateTitile(msg);
                      }
                  };
                  
                  
                  
                  start.setOnClickListener(this);
                  stop.setOnClickListener(this);
                  
              }

              @Override
              public void onClick(View v) {
                  switch (v.getId()) {
                  case R.id.start:
                      //點(diǎn)擊開始的時(shí)候調(diào)用handler.post()方法
                      handler.post(runnable);
                      break;
                  case R.id.stop:
                      //停止更新標(biāo)題
                      if(runnable!=null){
                          handler.removeCallbacks(runnable);
                      }
                      break;
                  default:
                      break;
                  }
              }
              
              
              class MyRunnable implements Runnable{

                  //覆寫run方法
                  @Override
                  public void run() {
                      //創(chuàng)建Message
                      Message msg=new Message();
                      //標(biāo)記消息
                      msg.what=UPDATA_TITIE;
                      //設(shè)置數(shù)據(jù)
                      msg.obj=new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss").format(new Date());
                      //發(fā)送消息
                      handler.sendMessage(msg);
                      //在run方法內(nèi)部在調(diào)用postDelayed()方法。
                      handler.postDelayed(this, 1000);
                  }
                  
              }
              
              
              
              //更新標(biāo)題
              private void updateTitile(Message msg) {
                  switch (msg.what) {
                  case UPDATA_TITIE:
                      RefershUiActivity.this.setTitle(String.valueOf(msg.obj));
                      break;

                  default:
                      break;
                  }
              }
              
          }
          posted on 2011-12-14 15:03 雪山飛鵠 閱讀(1990) 評(píng)論(0)  編輯  收藏 所屬分類: android
          主站蜘蛛池模板: 梨树县| 闵行区| 苍溪县| 乌审旗| 静安区| 若尔盖县| 屏南县| 景洪市| 平定县| 鸡西市| 莱阳市| 金乡县| 玛多县| 崇义县| 嘉鱼县| 仁化县| 南乐县| 蕲春县| 兰考县| 凌源市| 闻喜县| 岳普湖县| 青川县| 富裕县| 宁蒗| 光山县| 临西县| 柳江县| 乐亭县| 凌云县| 黄大仙区| 凤凰县| 鄯善县| 临朐县| 宾川县| 扎兰屯市| 通许县| 高州市| 桂阳县| 遂宁市| 乡城县|