Ищу библиотеку для работы с кнопками
- Войдите на сайт для отправки комментариев
Чт, 25/09/2014 - 10:31
Может кто сталкивался, или знает где найти толковую библиотеку для работы с кнопками, такую с помощью которой можно было бы легко отслеживать одинарные, двойные, тройные и т.д. с удержанием или без него. Чтоб на каждую комбинацию можно было повесить свою функцию и т.д.
Ну или подскажите мне идею, как организовать лучше историю нажатий кнопки (клик, двойно клик, двойной клик с удержанием)
Напишите сами, это интереснее.
Нагляднее всего хранить историю нажатий в текстовой строке, приплюсовывая для каждого нового нажатия в зависимсти от его длительности определённый символ (в принципе так даже коротки и длинный клик можно различать). Соотетственно сбрасить строку если состояние "кнопка отпущена" превысил некий разумный интервал времени, предварительно проанализировав. И при привышении длительности нажатия аналогично сбросить строку после анализа на совпадение с заданным жестом оканчивающимся на "удержание".
Для понимания идеи такой алгоритм нагляднее всего и его даже можно иногда реально использовать в устройствах. Если при этом опрашивать состояние клавишь не чаще раза в 10мс, то и дополнительных антидребезговых алгоритмов не нужно.
Вот мое решение:
Еще один адепт церкви Идеальной Кнопки.
Еще один адепт церкви Идеальной Кнопки.
а, чего мне нравится - смешные комменты в коде
102
// Скорее всего это были какие то флюктуации
103
// Отменяем нажатие
Черт! А я их фильтром отсеивал. :(
Черт! А я их фильтром отсеивал. :(
фильтровать - это полдела, а вот отменять нажатие...