//Global variables
bool pause;
TextView ClickToStart;
TextView ClickAsSoonAsPossible;
TextView Tries;
TextView TriesCount;
TextView AverageMs;
TextView AverageMsCount;
Button ScreenClickButton;
System.Timers.Timer timer1;
Color currentColor = Color.White;
Random rnd = new Random();
DateTime startTime1;
DateTime endTime1;
int secondsToFormat;
int ClicksCount = 0;
private void Timer1_Elapsed(object sender, ElapsedEventArgs e)
{
RunOnUiThread(() =>
{
Toast.MakeText(this, "Timer", ToastLength.Short).Show();
currentColor = Color.Green;
ScreenClickButton.SetBackgroundColor(currentColor);
});
timer1.Stop();
startTime1 = DateTime.Now;
}
private void ClickCount(object sender, EventArgs e)
{
if (currentColor == Color.White)
{
currentColor = Color.Red;
ScreenClickButton.SetBackgroundColor(currentColor);
int seconds = rnd.Next(1, 5);
Toast.MakeText(this, "Seconds:" + seconds, ToastLength.Short).Show();
timer1.Interval = seconds * 1000;
timer1.Start();
}
else if (currentColor == Color.Green)
{
endTime1 = DateTime.Now;
ClicksCount++;
secondsToFormat =endTime1.Millisecond - startTime1.Millisecond;
AverageMsCount.Text = secondsToFormat.ToString();
// if(secondsToFormat>=1000)
// {
// AverageMs.Text = ((endTime1 - startTime1).Milliseconds).ToString();
// }
currentColor = Color.White;
ScreenClickButton.SetBackgroundColor(currentColor);
}
else if (currentColor == Color.Red)
{
currentColor = Color.White;
ScreenClickButton.SetBackgroundColor(currentColor);
}
//Toast.MakeText(this, "You clicked me " + ClicksCount + "times", ToastLength.Short).Show();
if (ClicksCount == 1)
AverageMsCount.Text = secondsToFormat.ToString();
TriesCount.Text = "1";
if (ClicksCount == 2)
{
secondsToFormat = secondsToFormat / 2;
AverageMsCount.Text = secondsToFormat.ToString();
TriesCount.Text = "2";
}
if (ClicksCount == 3)
{
secondsToFormat = secondsToFormat / 3;
AverageMsCount.Text = secondsToFormat.ToString();
TriesCount.Text = "3";
}
if (ClicksCount == 4)
{
secondsToFormat = secondsToFormat / 4;
AverageMsCount.Text = secondsToFormat.ToString();
TriesCount.Text = "4";
}
if (ClicksCount == 5)
{
secondsToFormat = secondsToFormat / 5;
AverageMsCount.Text = secondsToFormat.ToString();
TriesCount.Text = "5";
}
if (Click`enter code here`sCount == 6)
{
ClicksCount = 1;
}
}
Привет, ребята, я пытаюсь сделать что-то подобное на Android Xamarin: https://www.humanbenchmark.com/tests/reactiontime/.Таким образом, после первого клика возврат миллисекунд будет отрицательным, как -525.После нескольких щелчков она становится выше, пока, наконец, не станет положительной.Может ли кто-нибудь объяснить, почему это отрицательно?Таймер истек в основном для того, чтобы зеленый экран появлялся в случайное время. После его появления мой счет в миллисекундах начинается.И когда нажал на зеленую кнопку, он закончил.Буду очень признателен за любую помощь.