databinding:能够替代findViewById,但是databinding的设计是为了view和数据的双向绑定而设计的,不推荐使用,并且报错复杂,项目中使用较多会影响开发速度(bing文件生成的慢),用了databinding之后其实可以不用获取控件,完全可以通过修改数据来对控件进行修改
注解:常用的有ButterKnife,xUtil。实现原理:通过注解在编译时生成代码,来代替手动编写findViewById,这种方式现在不推荐
kotlinx:只能在kotlin中使用和viewBinding类似
viewBinding:能在java和kotlin中使用,google推出的方案,在编译时会对xml布局文件生成对应的类,viewBinding并不是新技术,而是把DataBing中视图绑定功能单独拆出,功能单一,性能比DataBing好。在Android Studio 3.6的稳定版本及以上版本才可使用。使用详情见:https://www.jianshu.com/p/7116ae0752a4
kotlinx 扩展不能做编译期间检查,错误只能在运行时抛出,但是view binding在编译期就可以完成检查,并且会通过IDE给出反馈~