с #.If (timeElapsed == секунд) Когда кнопка нажата после случайного количества секунд, она должна изменить цвет - PullRequest
0 голосов
/ 27 мая 2018

Я пытаюсь сделать что-то вроде https://www.humanbenchmark.com/ с Android Xamarin.Я застрял с преобразованием продолжительности жизни в целое число?Это мой кусок кода:

private void AfterClicked()
{
    ScreenClickButton.SetBackgroundColor(Android.Graphics.Color.Red);     
     Random rnd = new Random();
    int seconds = rnd.Next(1, 11);
    DateTime startTime1;
    startTime1 = DateTime.Now;
    TimeSpan timeElapsed = DateTime.Now - startTime1;            
    if (timeElapsed == seconds)
    {
        ScreenClickButton.SetBackgroundColor(Android.Graphics.Color.Green);
    }
} 

1 Ответ

0 голосов
/ 27 мая 2018

Если вы посмотрите на документы для TimeSpan , вы увидите, что у него есть свойство seconds

if (timeElapsed.Seconds == seconds)

Однако, это, вероятно, не сработает: выпо сути, создаем два объекта DateTime подряд и сравниваем их - они не будут идентичны, но также не будут отличаться ни на какое значимое количество и, конечно, не более чем на секунду.

Если вы пытаетесь измерить пользователявремя реакции, вы, вероятно, хотите установить отметку времени до того, как они нажмут кнопку, а не после.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...