如何在 Xamarin.forms 中实现计时器

How to implement timer in Xamarin.forms

单击按钮后我将开始计时。

这是我的代码的一部分。

Device.StartTimer (TimeSpan.FromMilliseconds(1000), () => {
        int es = (int)sw.ElapsedMilliseconds / 1000%60;
        int em = (int)sw.ElapsedMilliseconds / 1000 / 60;
        timeLabel.Text = "Elapsed Time: \n" + em+"m "+es+"s";
        avgLabel.Text = "Average Time: \n" +(sw.ElapsedMilliseconds / 1000/(float)LessonMenu.drillList.Count).ToString()+"s";

        return true;
});

这很好用,无论如何,如果存在多个按钮,计时器会变得更快。 有人有解决办法吗?

我想你可以试试下面的代码。

public static Stopwatch sw=new Stopwatch();

int elapsedSec = (int)sw.ElapsedMilliseconds / 1000%60;
int elapsedMin = (int)sw.ElapsedMilliseconds / 1000 / 60;
timeLabel.Text = "Elapsed Time: \n" + elapsedMin+"m "+elapsedSec+"s";