I'm using annotated attributes all over my Android project to bind View
s and events to fields and methods.
@BindView(R.id.textViewOrderId)
TextView textViewOrderId;
@OnClick(R.id.buttonDateFilter)
public void onButtonDateFilter(View view) {...}
Migrating out of ButterKnife has become a bit expensive now. I would like to clarify a few things about this new Gradle Plugin change,
R2
class mentioned in this Reddit post?This still has no answer. But I suppose there is no option but to replace ButterKnife with an alternative, most probably View Binding.
As it states in this article, View Binding Tutorial for Android: Getting Started:
Additionally, ButterKnife’s development is coming to an end. Jake Wharton, the creator of this library, is deprecating it in favour of View Binding.
From the ButterKnife GitHub page:
Attention: This tool is now deprecated. Please switch to view binding. Existing versions will continue to work, obviously, but only critical bug fixes for integration with AGP will be considered. Feature development and general bug fixes have stopped.
As suggested by Jake Wharton, you can apply the butterknife-plugin and use R2 instead of R to access resource ids.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With