线程倒计时

本文介绍了一个简单的安卓应用程序如何实现定时任务,包括使用自定义线程进行短暂休眠后的页面跳转,以及通过Handler和Runnable实现的45分钟倒计时功能。
//休眠5秒跳转其他页面

 

public class ThreadActivity extends AppCompatActivity{

    private Intent intent;

    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_thread);
        new Mythread().start();
        intent = new Intent(this,MainActivity.class);

    }
        class Mythread extends Thread{
            @Override
            public void run() {
                super.run();
                try {
                    sleep(3000);
                    startActivity(intent);
                    finish();
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
            }
        }
}

 

//休眠5秒跳转其他页面

static Handler handler=new Handler(){
    @Override
    public void handleMessage(Message msg) {
        super.handleMessage(msg);
        int i=msg.what;
        if(i==1){
            change();
        }
    }
};
static class MyRunnable extends Thread implements Runnable{
    @Override
    public void run() {
        try {
            sleep(500);
            handler.sendEmptyMessage(1);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
}

 

//45分钟考试倒计时


 static int m=45;
 static int s=0;
//倒计时----------------------------------------------------------------------------
private static Handler handler2=new Handler();
private boolean isStop=false;
    private Runnable runnable=new Runnable() {

    @Override
    public void run() {
        if(s==0){
            s=59;
            m--;
        }
        tv_main_exam.setText(m+":"+s);
        s--;
        if(isStop||(m==0&&s==0)){
            m=45;
            s=0;
            handler.removeCallbacks(runnable);
        }else{
            handler.postDelayed(runnable,1000);
        }
    }
};

 



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值