Closed iamGGboss closed 2 years ago
集合数据操作复杂, 不可能提供所有的方法, 而且我不认为多了一行代码就是不方便
仔细看了下觉得addModels
涉及到了分组数据扁平化, 而且集合本身的addAll
也存在方法重载, 的确是brv设计考虑不够全面
最新版本已添加
/**
* 添加新的数据
* @param models 被添加的数据
* @param animation 是否使用动画
* @param index 插入到[models]指定位置, 如果index超过[models]长度则会添加到最后
*/
@SuppressLint("NotifyDataSetChanged")
fun addModels(
models: List<Any?>?,
animation: Boolean = true,
@IntRange(from = -1) index: Int = -1
)
666,我是从BRVAH转过来的,你的框架有BRVAH很多没有的功能,相对来说还是一个新兴框架,希望以后越做越大。插个题外话,其实除了addModels之外,其实可以提供删除Models的api,毕竟model是框架自身维护,对于使用者来说不需要太在意框架实现原理,所以可以提供deleteModel(model),deleteModel(index),然后框架自身再调用notifyItemRemoved,这样的话慢慢成长为一个完全体。
集合方法那么多全部添加岂不是加都加不完,而且删除集合元素不存在什么实现原理吧
另外本框架维护时间已经超过三年了
完全不会rv,也不愿意看文档,不会考虑添加这种冗余方法的
这样,可以的,所以我现在的方案是只把框架的数据引用指向viewmodel的数据,然后viewmodel操作集合,然后通过livedata提供给view订阅状态
真麻烦, 我感觉liveData和viewModel在这里可有可无
问题描述
添加数据时无法指定位置,可以通过 mBinding.rvGallery.mutable.add的方式实现,但是期望作者能通过一个方便的api供人使用
期望行为
期望addModels提供一个index的参数,插入到指定位置