前言
如题的功能会经常在项目中用到,需要做的就是在某个触发时,开始计时,然后将时长一直刷新在UI上。
效果直接上效果图:
其实思路就是在Update函数里累加Time.deltaTime计算出时间差,并将时间差转为时、分、秒(或毫秒)后展示在Text上即可。
主要代码:
CountTime += Time.deltaTime;
hour = (int)CountTime / 3600;
min = (int)(CountTime - hour * 3600) / 60;
sec = (int)(CountTime - hour * 3600 - min * 60);
msecStr = isShowMlSec?("."+ ((int)((CountTime - (int)CountTime) * 10)).ToString("D1")):"";
TimeText.text = hour.ToString("D2") + ":" + min.ToString("D2") + ":" + sec.ToString("D2")+msecStr;
其中的计算就是时间单位转换。
项目源码https://download.csdn.net/download/qq_33789001/19571557