Я смотрел сгенерированный код ButterKnife и заметил, что для комментариев @OnClick
используется DebouncingOnClickListener
, реализованный библиотекой.Почему ButterKnife использует метод DebouncingOnClickListener для методов @OnClick?
Что DebouncingOnClickListener
делает это, чтобы избежать более одного клика на любой элемент с помощью этого слушателя на одном кадре (для достижения этой цели они используют статический флаг). Вы можете увидеть реализацию here.
Я попытался найти объяснение, почему они решили использовать это для каждого события щелчка, управляемого библиотекой, но не смогли найти.
Итак, почему они используют это? Почему они решили, что каждый пользователь ButterKnife нуждается в этом? Не должен быть пользователь, который решает использовать это или нет? Зачем нужна поддержка привязки вида, предоставляемая этой функцией? Что произойдет, если я хочу получить более одного щелчка на одном фрейме? Я не мог использовать ButterKnife для событий click.
Я не притворяюсь оскорбительным, просто хочу объяснений, может быть, я чего-то не хватает.
Это библиотека с открытым исходным кодом. Если это вас сильно беспокоит, я уверен, что запросы на получение заявок будут приветствоваться. Если нет, вы всегда можете разветвить его. – GreyBeardedGeek