国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android中Handler實現倒計時的兩種方式

2019-10-22 18:33:10
字體:
來源:轉載
供稿:網友

背景:

最近項目中,正好做到登錄/注冊這個功能塊。它需要通過發送驗證碼,在規定的時間內用驗證碼來完成登錄/注冊。之前的項目中也有這個功能,但是覺得太復雜了,只好自己重新實現一遍。用Handler來做,覺得代碼簡介,邏輯也清楚。

代碼一:

//在向服務端發送獲取驗證碼成功的回調函數中,開始發消息:mHandler.obtainMessage();mHandler.sendEmptyMessage(MSG_CODE);//消息的處理: private static final int MSG_CODE = 0; private int limitTime = 121; private Handler mHandler = new Handler(new Handler.Callback() {    @Override    public boolean handleMessage(Message msg) {      if(msg.what==MSG_CODE){        limitTime--;        if(limitTime>0){          mHandler.sendEmptyMessageDelayed(MSG_CODE,1000);          mBtnVerify.setText("倒計時:"+limitTime+"s");        }else{          mBtnVerify.setText("獲取驗證碼");        }        return true;      }      return false;    }  });

代碼二:

//在向服務端發送獲取驗證碼成功的回調函數中,開始發消息:mHandler.post(myRunnale);//消息的處理: private int time = 11;  private Handler mHandler = new Handler();  private Runnable myRunnale = new Runnable() {    @Override    public void run() {      time--;      if(time>0){        mHandler.postDelayed(myRunnale,1000);        mTvChange.setText("剩余"+time+"s");      }else{        mTvChange.setText("完畢");      }    }  };

從上述代碼中可以看出:使用Handler.post(Runnable) 是一個發布Messgae的便利方法。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到Android開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 满城县| 会理县| 泸溪县| 朝阳市| 漾濞| 剑川县| 平潭县| 恭城| 元谋县| 华池县| 郁南县| 洛南县| 朝阳市| 蓝田县| 当涂县| 景宁| 会理县| 贡山| 枞阳县| 蕉岭县| 突泉县| 榕江县| 德令哈市| 西畴县| 常熟市| 乌兰县| 弥渡县| 年辖:市辖区| 沂南县| 饶平县| 泌阳县| 益阳市| 西昌市| 渝北区| 古丈县| 五家渠市| 泸州市| 江川县| 临夏县| 元阳县| 安宁市|