Android 如何在Kotlin中使用带有复选框和RecyclerView的SparseBooleanArray
我发现在滚动Recyclerview时,它丢失了复选框状态。您可以使用SparseBooleanArray存储整数值和布尔值。我在网上找到了Java代码。但在科特林如何做到这一点?为什么使用SparseBooleanArray,HashMap有什么问题?Android 如何在Kotlin中使用带有复选框和RecyclerView的SparseBooleanArray,android,kotlin,checkbox,android-recyclerview,Android,Kotlin,Checkbox,Android Recyclerview,我发现在滚动Recyclerview时,它丢失了复选框状态。您可以使用SparseBooleanArray存储整数值和布尔值。我在网上找到了Java代码。但在科特林如何做到这一点?为什么使用SparseBooleanArray,HashMap有什么问题?SparseArray可用于在键为基元类型时替换HashMap。不同的键/值类型有一些变体,尽管并非所有的都是公开的 好处是: 免费分配 禁止拳击 使用HashMap可以很好地工作,但是使用一种SparseArray类型可以稍微提高性能 为
SparseArray
可用于在键为基元类型时替换HashMap
。不同的键/值类型有一些变体,尽管并非所有的都是公开的
好处是:
- 免费分配
- 禁止拳击
val key = 1
val map = SparseBooleanArray()
map.put(key, true)
val value = map.get(key)
如果导入ktx扩展,可以使用Kotlin样式的访问器,如下所示:
map[key] = true
val value = map[key]
我的问题是如何在Kotlin中使用sparseBooleanArray?编写
映射[key]
是否真的需要额外的依赖关系?“Kotlin允许使用具有正确名称和签名的任何Java方法作为运算符重载和其他约定(invoke()等)。”()