Пользовательские аннотации, такие как Butterknifes "@OnClick" для android viewBinding - PullRequest
0 голосов
/ 19 марта 2020

Я перенес проект из Butterknife в android viewBinding.

В Butterknife есть что-то вроде:

@OnClick(R.id.button)
fun onButtonClicked()

И теперь я должен установить все прослушиватели нажатий кнопок вот так :

binding.button.setOnClickListener { onButtonClicked() }
...

Есть ли способ реализовать пользовательскую аннотацию, чтобы можно было написать что-то вроде:

@OnClick(binding.button)
fun onButtonClicked()

1 Ответ

0 голосов
/ 20 марта 2020

И теперь мне нужно настроить все прослушиватели нажатий кнопок следующим образом:

Да, это правильный способ создания прослушивателей щелчков с помощью View Binding.

Есть ли способ реализовать пользовательскую аннотацию, чтобы можно было написать что-то вроде:

Нет. Для него нет готовых решений. но вы можете создать свой собственный процессор аннотаций для обработки прослушивателей кликов. Следуйте этой статье для получения дополнительной информации.

Если вы спросите мое личное мнение, я пойду по умолчанию и буду использовать setOnClickListener. Джейк Уортон, создатель Butterknife, предлагает использовать View Binding (он также является частью команды Google, которая работает над View Binding)

...