(改正网上大部分代码都会出现的错误)用Android中的Chronometer实现HH:MM:SS的显示,亲自测试几天

本文针对网上用android的chronometer实现HH:MM:SS的显示,大部分代码都是错误的,根本没有去实际测试过

如下图就是错误的



废话不多说,直接上代码,亲自测试了几天,在大于99个小时是显示如 100:00:00,要改的同学也可以自己改下

xml文件

            

java文件

	public void starttimecount() {

		timecount.setOnChronometerTickListener(new Chronometer.OnChronometerTickListener() {
			@Override
			public void onChronometerTick(Chronometer cArg) {
				long time = System.currentTimeMillis() - cArg.getBase();
				int h = (int) (time / 3600000);
				int m = (int) (time - h * 3600000) / 60000;
				int s = (int) (time - h * 3600000 - m * 60000) / 1000;
				String hh = h < 10 ? "0" + h : h + "";
				String mm = m < 10 ? "0" + m : m + "";
				String ss = s < 10 ? "0" + s : s + "";
				String timeFormat = hh + ":" + mm + ":" + ss;
				//timecount.updateTime(timeFormat);
				timecount.setText(timeFormat);
			}
		});
		timecount.setBase(System.currentTimeMillis());
		timecount.start();

	}

你可能感兴趣的:(Android相关)