Android開發之Timer和Handler

今天遇到了一個很奇怪的bug,一個項目在一個華爲手機上能用,在小米和魅族手機上就會閃退。我始終認爲不可能是手機的問題,於是我花了一個晚上的時間找bug,最後終於讓我找到了。在這個地方:

原來的程序是:

TimerTask task = new TimerTask() {
    @Override
    public void run() {
        t1.setTextColor(Color.argb(127, 255, 0, 0));
    }
};
Timer timer = new Timer();
timer.schedule(task, 3000);

定時一段時間,讓View改變顏色。改變後的程序是:

Handler mHandler = new Handler();
Runnable r = new Runnable() {
    @Override
    public void run() {
        t1.setTextColor(Color.argb(127, 255, 0, 0));
    }
};
mHandler.postDelayed(r, 5000);//延時

改完後結果就對了。以後一定要查一查爲什麼...

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章