android – 根据数据库中的信息在RecyclerView中显示不同的viewType?

android – 根据数据库中的信息在RecyclerView中显示不同的viewType?,第1张

概述打了一个路障,想知道如何解决它,看起来像鸡蛋和鸡蛋对我来说,可以做一双新鲜的眼睛. 我有一个数据库,里面有关于其中的地方的信息.我想在RecyclerView中显示按距离排序的所有地方. 当只有一个viewType时,我实际上已经完成了这个.然而,这是我无法弄清楚的,我想要为距离用户一定距离的地方显示不同的视图.所以在100米以内. 该信息在我的数据库中,所以当在setAdapter()上调用ge 打了一个路障,想知道如何解决它,看起来像鸡蛋和鸡蛋对我来说,可以做一双新鲜的眼睛.

我有一个数据库,里面有关于其中的地方的信息.我想在RecyclerVIEw中显示按距离排序的所有地方.

当只有一个vIEwType时,我实际上已经完成了这个.然而,这是我无法弄清楚的,我想要为距离用户一定距离的地方显示不同的视图.所以在100米以内.

该信息在我的数据库中,所以当在setAdapter()上调用getItemVIEwType(int position)时,我的CursorLoader还没有完成所有信息的提取,所以我得到一个空指针异常.

我的问题:

有没有办法让我等待我的CursorLoader完成然后使用我的适配器,而不是一个空的光标?当我尝试在加载器完成后调用.setAdapter()时,我在日志中得到以下内容:没有连接适配器;跳过布局,因为RecyclerVIEw需要在创建活动时设置适配器.

我的getItemVIEwType(position)目前看起来像这样:

if (!cursor.isClosed()) {    cursor.movetoposition(position);}if (cursor.getInt(2) <= 100) {   return TYPE_NEARBY;} else {  return TYPE_NOT_NEARBY;}

基本上我需要使用CursorLoader中的数据来确定vIEwType并为该单元格加载不同的视图.使用一个VIEwType它可以工作,因为我不需要检查距离,它们都是相同的视图.

谢谢你尽你所能的帮助!

解决方法 由于blackbelts评论,最终得到了这个工作.

在调试模式下完成整个过程,一切都按预期工作.我只需要确保我使用onBindVIEwHolder(int position)中的数据做正确的事情.

主要问题是因为我的VIEwHolder中有一个“holderID”int与我的vIEwType int不同,所以我可能只是把它们弄糊涂了.

总结

以上是内存溢出为你收集整理的android – 根据数据库中的信息在RecyclerView中显示不同的viewType?全部内容,希望文章能够帮你解决android – 根据数据库中的信息在RecyclerView中显示不同的viewType?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1123774.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-30
下一篇 2022-05-30

发表评论

登录后才能评论

评论列表(0条)

保存