淘宝抢购倒计时(时、分、秒)

private Runnable timeRunnable = new Runnable() {

        @Override
        public void run() {
            toDataCount();
        }

};

private void toDataCount() { SimpleDateFormat df = new SimpleDateFormat("MM-dd HH:mm:ss"); try { String date = df.format(new Date()); Date d2 = df.parse(date);//系统时间 Date d1 = df.parse(AppConfig.getTmLongToStr_(gameInfo.getStartDateUnix() * 1000));//服务器获取时间 long diff = d1.getTime() - d2.getTime();//这样得到的差值是微秒级别 long days = diff / (1000 * 60 * 60 * 24); long hours = (diff - days * (1000 * 60 * 60 * 24)) / (1000 * 60 * 60); long minutes = (diff - days * (1000 * 60 * 60 * 24) - hours * (1000 * 60 * 60)) / (1000 * 60); long second = (diff - days * (1000 * 60 * 60 * 24) - hours * (1000 * 60 * 60) - minutes * (1000 * 60)) / 1000; if (days <= 0 && hours <= 0 && minutes <= 0 & second <= 0) { time_tv.setText(hours + ":" + minutes + ":" + second); handler.removeCallbacks(timeRunnable); } else { time_tv.setText(hours + ":" + minutes + ":" + second); handler.postDelayed(timeRunnable, 1000); } } catch (Exception e) { } }

handler.post(timeRunnable);//调用倒计时

经验分享 程序员 微信小程序 职场和发展