-
Notifications
You must be signed in to change notification settings - Fork 93
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
建议支持BRV,BaseRecyclerViewAdapterHelper都不维护了 #51
Comments
可以考虑一下 |
我看好你的水平哦,ViewBindingKTX已经在使用了 |
BRV还存在KTX的优化空间吗? |
我去,东哥怎么大驾光临了... 其实 BRV 结合 ViewBinding 使用会更方便一点,目前想到的封装是: rv.linear().setup {
addType<SimpleModel>(R.layout.item_simple)
onBind<ItemSimpleBinding> { // 使用 ViewBinding
tvSimple.text = getModel<SimpleModel>().name
}
}.models = getData() 对了东哥,我看源码发现 |
|
可以,使用泛型封装会用到反射。不用反射也可以,不过要传个高阶函数,代码看起来会稍微有点奇怪。 onBind(ItemSimpleBinding::bind) {
tvSimple.text = getModel<SimpleModel>().name
}
另外文档中的 ViewBinding 用法直接调用 |
坐看高手论道 |
|
只是和东哥交流交流,BRV 功能很多,考虑得很全面,我要先确定我的想法是不是多余的,就得去看下源码。刚好本人来了,就顺便反馈下看源码时的一点疑惑,提点小建议。 |
BRV 对 DataBinding 支持已经很好了,所以我更多的是考虑补充一些不方便用 DataBinding 情况。可能有的人觉得 DataBinding 用起来复杂,可能有人像我老大那样反感在 xml 绑定数据(我只能在部门里推一推 ViewBinding)。这时用 BRV 难免要使用 再看了下源码发现 使用反射和不用反射的用法都会提供,反射的方式会做缓存的,只在创建 holder 时反射一次,BRVAH 也是这么干的。 多类型用法会有点区别,目前有想到两种封装方式,具体的要再斟酌斟酌。 |
经过改进, binding.rv.linear().setup {
addType<SimpleModel>(R.layout.item_simple)
onBind {
val binding = getBinding<ItemSimpleBinding>() // 使用ViewBinding
binding.tvSimple.text = layoutPosition.toString()
}
}.models = getData() |
支持这个感觉不错,https://github.com/liangjingkanji/BRV
很强大,
The text was updated successfully, but these errors were encountered: