【发布时间】:2017-03-26 16:17:20
【问题描述】:
目标是衡量用户的反应时间。单击开始按钮 3-10 秒后,它应该启动秒表并使停止按钮可见。用户单击停止按钮后,它应该停止手表并显示用户响应所用的毫秒数。
我无法想出一个解决方案来解决如何实现一个循环来检查按钮是否被按下并在不阻止用户点击按钮的情况下停止手表。
public partial class Main : ContentPage
{
public Main()
{
InitializeComponent();
}
public void OnStartClicked(object sender,EventArgs args)
{
Stopwatch stopWatch = new Stopwatch();
startButton.IsVisible = false;
BG.BackgroundColor = Color.Red;
status_text.Text = "Get Ready";
Random R = new Random();
Device.StartTimer(TimeSpan.FromSeconds(R.Next(3, 10)), () =>
{
stopWatch.Start();
stopButton.IsVisible = true;
BG.BackgroundColor = Color.Green;
long elapsed = stopWatch.ElapsedMilliseconds;
stopWatch.Stop();
status_text.Text = elapsed.ToString();
return false;
});
}
}}
【问题讨论】:
标签: xamarin timer xamarin.forms stopwatch