android 定时器的使用

1、在网络开发,我们经常会遇到连接网络的情况,在获取数据时我们一般会采用一个进度条的方式来提醒用户当前程序正在执行获取数据,但是,在网络连接失败的情况下,我们不能一直让进度条在界面上显示,应该在一定时间内提醒用户检查网络,此时就应该让进度条不显示,下面是一个简单的Demo,仅供参考


    private Timer mTimer = new Timer();
    private int count = 1;

    private void startTimer() {
        mTimer.schedule(new TimerTask() {

            @Override
            public void run() {
                Message msg = new Message();
                if (count <= 5) {
                    msg.what = 2;

                    myHandler.sendMessage(msg);// 向Handler发送消息
                } else {
                    msg.what = 3;
                    myHandler.sendMessage(msg);// 向Handler发送消息停止继续执行
                }
                count++;
            }
        }, 3000, 3000);
    }

schedule() 方法中的第二个参数代表延迟多长时间开始显示,第三个参数代表每隔多长时间刷新一次(单位为毫秒)。

2、当时程序在五次连接失败之后自动消失滚动条,并且提示用户当前网络出现故障
    private Handler myHandler = new Handler() {
        public void handleMessage(android.os.Message msg) {
            switch (msg.what) {
            case 1:
                break;
            case 2:
                progress.setVisibility(View.VISIBLE);
                android.util.Log.d("mark", "2");
                break;
            case 3:
                android.util.Log.d("mark", "3");
                progress.setVisibility(View.GONE);
                mTimer.cancel();//
                mTimer = null;
                break;
            default:
                break;
            }
        };
    };


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值