android timer使用

 

   timer是android中用于计时的控件,其实现需要TimerTask 以及Handler的辅助

 首先我们现在建好的类中定义Handler 代码如下:

Handler  handler = new Handler() {
     
         @Override
         public void handleMessage(Message msg) {
             super.handleMessage(msg);
            
             Log.d("debug", "handleMessage方法所在的线程:"
                     + Thread.currentThread().getName());
 
             int m=msg.what;
             // Handler处理消息 
             if (m > 0) {
              Log.d("debug","剩余时间:"+(m/60)+"分" +(m%60)+ "秒");
              Time.setText("");
                Time.setText("    剩余时间:"+(m/60)+"分" +(m%60)+ "秒");
             } else {
                
              getWarmingDialog("时间已到,请交卷,否则您的成绩将作废!","交卷").show();
                 // 结束Timer计时器 
                 timer.cancel();
                 Time.setVisibility(1);
             }
            
         }
     };

 

之后在类的某函数中写到:

 timer=new Timer(true);
        //定义倒计时
        TimerTask timerTask=new TimerTask() {
   
         int m=2700;
   @Override
   public void run() {
    
    Message msg=new Message();
    msg.what=m--;
    handler.sendMessage(msg);  //注意此处为sendMessage
   }
  };
       timer.schedule(timerTask,1000,1000);  //这里用来设置每隔多少秒触发一次事件

然后通过button点击或其他什么事件调用这个函数就可以了

赶快试试吧

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值