启动活动时,回收者视图有时会显示或不显示数据。这是它的编程方式,我有一个主要活动,一个活动具有回收者视图。为了测试它,我在onCreate方法中使用for循环对数据进行了硬编码。它只会循环并将数据添加到阵列,然后再将其设置为回收站视图。现在的问题是,有时会显示数据,有时列表中什么也没有。我可以轻松地通过回到主要活动和带有回收者视图的活动来重现该问题。我认为通过将其添加到onCreate来做错了。
这是我在onCreate中拥有的:
for(i in 1..5){
val newDeliveredAsset = AssetDelivered()
newDeliveredAsset.id = i
newDeliveredAsset.accountNumber = 1
newDeliveredAsset.barCode = "BB" + i.toString()
newDeliveredAsset.description = "test " + i.toString()
assets.add(newDeliveredAsset)
}
rvAsset = findViewById(R.id.ce_recycler_view)
layoutManager = LinearLayoutManager(this)
layoutManager.orientation = LinearLayoutManager.VERTICAL
rvAsset.layoutManager = layoutManager
rvAdapter = AssetRecyclerViewAdapter(this, assets as List<Asset>)
rvAsset.adapter = rvAdapter
我还尝试记录适配器的getItemSize,它显示了正确的数字。
更新:将电话留在未显示回收者视图项目的活动上。几分钟后,项目出现了。