android viewBinding 的自定义注释,如 Butterknifes“@OnClick”

Pun*_*ika 5 android kotlin android-viewbinding

我将一个项目从黄油刀迁移到了 android viewBinding。

在 Butterknife 中有类似的东西:

@OnClick(R.id.button)
fun onButtonClicked()
Run Code Online (Sandbox Code Playgroud)

现在我必须像这样设置所有按钮单击侦听器:

binding.button.setOnClickListener { onButtonClicked() }
...
Run Code Online (Sandbox Code Playgroud)

有没有办法实现自定义注释以便能够编写如下内容:

@OnClick(binding.button)
fun onButtonClicked()
Run Code Online (Sandbox Code Playgroud)

Som*_*mar 2

现在我必须像这样设置所有按钮单击侦听器:

是的,这是使用视图绑定执行单击​​侦听器的正确方法。

有没有办法实现自定义注释,以便能够编写如下内容:

不。没有任何现成的解决方案可用。但您可以创建自己的注释处理器来处理点击侦听器。请关注本文以获取更多信息。

如果你询问我个人的意见,我会按照默认的方式使用setOnClickListener。Jake Wharton,建议使用 View Binding 的创建者Butterknife(他也是 Google 致力于 View Binding 的团队的成员)

  • 只是……感觉像是倒退了一步。注释真“舒服” (4认同)