5

import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.util.Log
import androidx.recyclerview.widget.RecyclerView
import com.google.firebase.database.DataSnapshot
import com.google.firebase.database.DatabaseError
import com.google.firebase.database.FirebaseDatabase
import com.google.firebase.database.ValueEventListener
import com.squareup.picasso.Picasso
import com.xwray.groupie.GroupAdapter
import com.xwray.groupie.Item
import com.xwray.groupie.ViewHolder
import kotlinx.android.synthetic.main.new_msg_layout.*
import kotlinx.android.synthetic.main.user_row_new_msg.view.*

class NewMsgActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.new_msg_layout)

        supportActionBar!!.title= "Contacts"
        fetchUser()
    }


   fun fetchUser(){
        val ref =FirebaseDatabase.getInstance().getReference("/Users")
        ref.addListenerForSingleValueEvent(object: ValueEventListener{
            override fun onCancelled(p0: DatabaseError) {

            }

            override fun onDataChange(p0: DataSnapshot) {

                val adaptor = GroupAdapter<ViewHolder>()
                p0.children.forEach{
                    Log.d("mainn", it.toString())

                    val user = it.getValue(User::class.java)
                    if(user!= null){
                        adaptor.add(UserItem(user))
                    }
                }
                recycleV_newMsg.adapter= adaptor
            }



        }    )


    }

}


class UserItem(val user:User) : Item<ViewHolder>(){

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

    viewHolder.itemView.username_textView_new.text=user.username
    Picasso.get().load(user.Dp_url).into(viewHolder.itemView.DP_imageView_new)

}
override fun getLayout(): Int {
    return R.layout.user_row_new_msg

}

}

Please Help. i have tried everything but im still getting --> E/RecyclerView: No layout manager attached; skipping layout. Im using Groupie RecyclerView . Please help as im new to kotlin . i dont know much. Everything works fine. The data is not displayed.

But error messages are being logged:

AL.
  • 36,815
  • 10
  • 142
  • 281
Anmol Pandey
  • 51
  • 1
  • 5

1 Answers1

9

for liner recycler view add this attribute to recycler view in xml:

app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"

or this for grid layout:

app:layoutManager="androidx.recyclerview.widget.GridLayoutManager"
ygngy
  • 3,630
  • 2
  • 18
  • 29