Android 四种定时器的写法

更多Android总结知识点

Android中的13种Drawable小结

Android的八种对话框的实现

Android 四种定时器的写法

Android之系统给我们提供的常见的Activity

第一种方式利用Timer和TimerTask

Android 四种定时器的写法_第1张图片
Paste_Image.png
TimerTask  task= new TimerTask() {  
         @Override  
         public void run() {  
                count++;  
                Log.i("MainActivity",count + "");  
         }  
};  

第二种方式 使用Handler

handler.sendEmptyMessageDelayed(0, 4000);//启动handler,实现4秒定时循环执行  
private Handler handler = new Handler(){  
public voidhandleMessage(android.os.Message msg) {  
                     
           if(isChange){  
                    //逻辑处理  
              
                        handler.sendEmptyMessageDelayed(0,4000);//4秒后再次执行  
            }  
  }  
};  

第三种方式 使用CountDownTimer

CountDownTimer cdt = new CountDownTimer(10000, 100) {  
    @Override  
    public void onTick(long millisUntilFinished) {  
        tv_hello.setText(millisUntilFinished + "");  
    }  
    @Override  
    public void onFinish() {  
          
    }  
};  
  
cdt.start();  

上面的例子是
每隔100毫秒执行onTick中的方法一次
直到执行完10000/100次为止,最后会执行onFinish()中的方法

第四种方式 AlarmManager

Intent intent2 = newIntent(ReadLogService.this,TestBroadcast.class);  
PendingIntent pd =PendingIntent.getBroadcast(getApplicationContext(), 0, intent2,PendingIntent.FLAG_ONE_SHOT);  
AlarmManager am = (AlarmManager)getSystemService(ALARM_SERVICE);  
long triggerTime =SystemClock.elapsedRealtime() + 5*1000;  
am.set(AlarmManager.ELAPSED_REALTIME,triggerTime, pd);  

你可能感兴趣的:(Android 四种定时器的写法)