本文实例为大家分享了Android仿京东首页秒杀倒计时的具体代码,供大家参考,具体内容如下
xml配置
<&#63;xml version="1.0" encoding="utf-8"&#63;>
方法内容:
//得到控件 mMiaoshaShiTv = view.findViewById(R.id.tv_miaosha_shi); mMiaoshaTimeTv = view.findViewById(R.id.tv_miaosha_time); mMiaoshaMinterTv = view.findViewById(R.id.tv_miaosha_minter); mMiaoshaSecOndTv= view.findViewById(R.id.tv_miaosha_second); /****************京东秒杀倒计时**********************/ //使用handler用于更新UI private Handler handler = new Handler() { @Override public void handleMessage(Message msg) { super.handleMessage(msg); countDown(); handler.sendEmptyMessageDelayed(0, 1000); } }; /** * 秒杀 */ private void countDown() { SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date curDate = new Date(System.currentTimeMillis()); String format = df.format(curDate); StringBuffer buffer = new StringBuffer(); String substring = format.substring(0, 11); buffer.append(substring); Log.d("ccc", substring); Calendar calendar = Calendar.getInstance(); int hour = calendar.get(Calendar.HOUR_OF_DAY); if (hour % 2 == 0) { mMiaoshaTimeTv.setText(hour + "点场"); buffer.append((hour + 2)); buffer.append(":00:00"); } else { mMiaoshaTimeTv.setText((hour - 1) + "点场"); buffer.append((hour + 1)); buffer.append(":00:00"); } String totime = buffer.toString(); try { java.util.Date date = df.parse(totime); java.util.Date date1 = df.parse(format); long defferenttime = date.getTime() - date1.getTime(); long days = defferenttime / (1000 * 60 * 60 * 24); long hours = (defferenttime - days * (1000 * 60 * 60 * 24)) / (1000 * 60 * 60); long minute = (defferenttime - days * (1000 * 60 * 60 * 24) - hours * (1000 * 60 * 60)) / (1000 * 60); long secOnds= defferenttime % 60000; long secOnd= Math.round((float) seconds / 1000); mMiaoshaShiTv.setText("0" + hours + ""); if (minute >= 10) { mMiaoshaMinterTv.setText(minute + ""); } else { mMiaoshaMinterTv.setText("0" + minute + ""); } if (second >= 10) { mMiaoshaSecondTv.setText(second + ""); } else { mMiaoshaSecondTv.setText("0" + second + ""); } } catch (ParseException e) { e.printStackTrace(); } } /***************京东秒杀倒计时****************/
开启倒计时:
handler.sendEmptyMessage(0);
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。