本篇內容介紹了“Android倒計時神器分析”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
在共青城等地區,都構建了全面的區域性戰略布局,加強發展的系統性、市場前瞻性、產品創新能力,以專注、極致的服務理念,為客戶提供網站建設、成都網站設計 網站設計制作按需定制開發,公司網站建設,企業網站建設,品牌網站制作,成都全網營銷,外貿營銷網站建設,共青城網站建設費用合理。
啥是CountDownTimer?
CountDownTimer是Andorid.os包下一個谷歌為我們封裝好的一個倒計時工具。我們嗎、平時開發過程中像一些驗證碼、倒計時的功能,如果自己封裝一個倒計時工具就會稍顯麻煩。而谷歌這個工具使用起來非常方便。
源碼
package android.os;public abstract class CountDownTimer { public CountDownTimer(long millisInFuture, long countDownInterval) { throw new RuntimeException("Stub!"); } public final synchronized void cancel() { throw new RuntimeException("Stub!"); } public final synchronized CountDownTimer start() { throw new RuntimeException("Stub!"); } public abstract void onTick(long var1); public abstract void onFinish();}
構造函數:
兩個參數,第一個是總的倒計時時間,第二個是倒計時間隔。比如1秒跳一次該參數就為1000,兩個參數的單位都為毫秒。
start():
調用該方法以啟動計時器。
cancel():
調用該方法以釋放計時器。
重要!一定要在onDestory等回調中cancel()計時器,否則會因為頁面被回收計時器還在運作而出現空指針錯誤!
回調方法:
onTick():
每個時間間隔會回調一次,比如設置了1000ms的間隔,就會每1000ms回調一次這個方法。
onFinish():
在整個計時器結束之后回調。
使用中的一些坑
計時不準的問題
雖然這個工具有針對延遲做了處理,但是因為一些其他原因,導致CountDownTimer開始計時的時候極有可能不從你設定的總時長開始計時。比如你設定的millsInFuture是30000(30s),CountDownTimer其實是從29xxx開始計時的,這樣會導致一些Text的UI顯示快一秒。解決辦法就是在構造的時候就傳入一個比30000大一些的數,比如30300.
內存泄漏/空指針問題
CDT內部其實是對Handler有做一個封裝,所以一定一定要在回收的時候調用Timer的cnacel()方法,否則容易出現空指針錯誤。
“Android倒計時神器分析”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注創新互聯網站,小編將為大家輸出更多高質量的實用文章!
網站欄目:Android倒計時神器分析
網頁URL:http://vcdvsql.cn/article18/pphgdp.html
成都網站建設公司_創新互聯,為您提供網站收錄、定制網站、用戶體驗、品牌網站建設、小程序開發、網站設計
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯