【问题标题】:E/RecyclerView: No adapter attached; skipping layout Logcat errorE/RecyclerView:没有附加适配器;跳过布局 Logcat 错误
【发布时间】:2019-07-04 16:30:32
【问题描述】:

我有一个用于聊天应用程序的 recyclerview,所以我需要实现用户,所以我从 firebase 获取他们,一旦我添加了他们的图像,一切正常,图像不会显示在 recyclerview 中,它让我出错“E/RecyclerView:未连接适配器;跳过布局”

这是我用于实现的函数,我在 onCreate 方法中调用它

  fun fetchUsers(){
        val ref = FirebaseDatabase.getInstance().getReference("/users")
        ref.addValueEventListener(object:ValueEventListener {
            override fun onCancelled(p0: DatabaseError) {

            }

            override fun onDataChange(p0: DataSnapshot) {
                val adapter = GroupAdapter<ViewHolder>()
                p0.children.forEach {
                    Log.d("NewMessageActivity",it.toString())
                    val user = it.getValue(User::class.java)
                        adapter.add(UserItem(user!!))
                    adapter.setOnItemClickListener { item, view ->
                        val intent = Intent(view.context, ChatLogActivity::class.java)
                        startActivity(intent)
                        finish()
                    }
                }
                recyclerViewNewMessages.adapter=adapter
            }

        })
    }

这是我调用的类

class UserItem(val user : User): Item<ViewHolder>(){
    override fun getLayout(): Int {
        return R.layout.user_row_newmessages
    }

    override fun bind(viewHolder: ViewHolder, position: Int) {

        viewHolder.itemView.tv_UserNamenewed.text = user.userName
        Picasso.get().load(user.profileImage).into(viewHolder.itemView.iv_UserPhotonewed)
    }

}

【问题讨论】:

    标签: android android-studio kotlin android-recyclerview


    【解决方案1】:

    您可以在开始时分配和清空适配器,然后在拥有数据时将数据添加到适配器。这样你就不会看到这个日志了。

    换句话说,如果您在主线程中进行赋值,例如在活动的onCreate() 中,您将看不到这一点。但是,您设置适配器的第一个位置是在异步代码块中。一切都已经绘制好了,recyclerview 还没有提供适配器,所以它打印了这个日志。

    【讨论】:

      猜你喜欢
      • 2019-04-13
      • 2016-11-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多