Тесты ПУЭ на Xamarin часть 4
Часть 1: Тесты ПУЭ на Xamarin
Часть 2: Тесты ПУЭ на Xamarin часть 2
Часть 3: Тесты ПУЭ на Xamarin часть 3
Приложение: https://play.google.com/store/apps/details?id=com.GRText.pue...
В конструкторе класса App устанавливается главная страница приложения - MainPage, в конструкторе главной страницы создается экземпляр класса MyView, который устанавливается контекстом привязок. Для события получения ответа GotAnswer устанавливается обработчик.
MainPage.xaml.cs содержит три поля. Color для подсвечивания MyLabel по которым сделан клик, в вопросах где больше одного варианта ответа. Color - исходный цвет MyLabel. И переменная для работы счётчика кликов (некоторые элементы ожидают больше одного клика).
При клике по одному из MyLabel выполняется функция TapGestureRecognizer_Tapped. В ней сначала проверяется получено ли ожидаемое количество ответов. Если да, то ничего не происходит, выполнение функции завершается. Иначе, инвертируется свойство IsClicked MyLabel'a по которому был сделан клик и изменяется свойство Taps(количество выбранных ответов) контекста привязок. При изменении свойства Taps оно сравнивается с ожидаемым количеством ответов и если выбрано ожидаемое количество ответов, вопрос становится закрытым, срабатывает событие GotAnswer.
В обработчике события GotAnswer проверяется полученный ответ. Если ответ неверный, этот вопрос вносится в список чаще показываемых. Т.е. свойству Errors этого экземпляра QuestCase присваивается значение 5. Если ответ из списка чаще показываемых и ответ верный свойство Errors уменьшается на 1. Затем показываются цвета всех MyLabel.
Список чаще показываемых вопросов - это экземпляры QuestCase со свойством Errors больше 0.







Android Developers
90 постов2K подписчиков
Правила сообщества
Друзья!
Давайте адекватно относиться к тематике сообщества. Посты, не удовлетворяющие требованиям канала, будут отклоняться. Разработка под Android - это не только описание того, что надо сделать
(освоить Java / покормить кота / установить студию), но и реальные примеры того, что Вы описываете.