我的代码在我的Unity项目中运行一个计时器,计时器使用DateTime运行多个场景,我试图在编辑器中显示时间,以便我可以在UI上显示倒计时。
这是倒计时的脚本;
public static class GlobalCountDown
{
static DateTime TimeStarted;
static TimeSpan TotalTime;
public static void StartCountDown(TimeSpan totalTime)
{
TimeStarted = DateTime.UtcNow;
TotalTime = totalTime;
}
public static TimeSpan TimeLeft
{
get
{
var result = TotalTime - (DateTime.UtcNow - TimeStarted);
if (result.TotalSeconds <= 0)
return TimeSpan.Zero;
return result;
}
}
}
这是对我在每个场景中制作的脚本的调用来携带定时器;
GlobalCountDown.StartCountDown (TimeSpan.FromSeconds (8));
功能正常,但我不确定如何在UI中显示它,我尝试使用以下但我没有太多运气;
string timeLeft = GlobalCountDown.TimeLeft.TotalSeconds().ToString("D2");
对此有任何帮助或建议将不胜感激。
答案 0 :(得分:1)
使用UI文本对象。
[SerializeField] Private Text countdownTimer; // will require UnityEngine.UI at top
每次更改/减少计时器值时,都会更新countdownTimer
的{{1}}属性。
text