編輯:關於android開發
安卓為驗證碼倒計時提供了一個很方便的類android.os.CountDownTimer
其使用方法:
new CountDownTimer(30000, 1000) { public void onTick(long millisUntilFinished) { mTextField.setText("seconds remaining: " + millisUntilFinished / 1000); } public void onFinish() { mTextField.setText("done!"); } }.start();
onTick 間隔時間回調 onfinish 倒計時完回調
從源碼可以看到其實現主要是通過sendMessageDelayed實現的,其主要的邏輯如下:
private Handler mHandler = new Handler() {
@Override
public void handleMessage(Message msg) {
synchronized (CountDownTimer.this) {
if (mCancelled) {
return;
}
final long millisLeft = mStopTimeInFuture - SystemClock.elapsedRealtime();
if (millisLeft <= 0) {
onFinish();
} else if (millisLeft < mCountdownInterval) {
// no tick, just delay until done
sendMessageDelayed(obtainMessage(MSG), millisLeft);
} else {
long lastTickStart = SystemClock.elapsedRealtime();
onTick(millisLeft);
// take into account user's onTick taking time to execute
long delay = lastTickStart + mCountdownInterval - SystemClock.elapsedRealtime();
// special case: user's onTick took more than interval to
// complete, skip to next interval
while (delay < 0) delay += mCountdownInterval;
sendMessageDelayed(obtainMessage(MSG), delay);
}
}
}
};
可以在以後做一些定時操作的時候,做相關的邏輯。
硅谷商城4--顯示購物車商品,硅谷商城4--購物車
硅谷商城4--顯示購物車商品,硅谷商城4--購物車 1_購物車頁面和標題欄的設置 govaffair_pager.xml <?xml version=1.0 en
Android Facebook和Twitter分享
Android Facebook和Twitter分享 1. 背景 在年初的時候,公司的項目有個新的需求,在英文版的應用中加入Facebook和Twitter分享功能。
百度地圖開發的學習(二)——地圖定位,百度地圖
百度地圖開發的學習(二)——地圖定位,百度地圖定位是地圖開發的必經重要的環節,我也在不斷學習中,就自己了解寫一下這些。 一、配置 1.百度的定位是有自己jar包和so文件
違章查詢源碼分享,違章查詢源碼
違章查詢源碼分享,違章查詢源碼 使用快遞100查詢接口實現 源碼地址:https://github.com/chenjie200280/weizhang 測試