Kotlin Android MVVM RecyclerView Don';不显示任何数据

Kotlin Android MVVM RecyclerView Don';不显示任何数据,android,kotlin,mvvm,android-recyclerview,android-mvvm,Android,Kotlin,Mvvm,Android Recyclerview,Android Mvvm,我正在尝试使用ROOM实现MVVM体系结构。 我有保存我数据的数据库。但它不会在RecyclerView中显示 我做错了什么?我看到RecyclerView,但没有任何数据 一、 我一直在寻找问题,但我不知道问题在哪里 使用recycyclerview的活动: class Main2Activity : AppCompatActivity() { lateinit var FirebaseUser: FirebaseUser lateinit var auth: Firebas

我正在尝试使用ROOM实现MVVM体系结构。 我有保存我数据的数据库。但它不会在RecyclerView中显示

我做错了什么?我看到RecyclerView,但没有任何数据

一、 我一直在寻找问题,但我不知道问题在哪里

使用recycyclerview的活动:


class Main2Activity : AppCompatActivity() {
    lateinit var FirebaseUser: FirebaseUser
    lateinit var auth: FirebaseAuth
    lateinit var userRef: DatabaseReference
    // private lateinit var ProfileViewModel: ProfileViewModel

    private val ADD_PROFILE_REQUEST = 1
    private lateinit var profileViewModel: ProfileViewModel


    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main2)
        Calendar.getInstance()
        val bundle: Bundle = intent.extras


        val adapterRoom = ProfileRecyclerViewAdapter()

        val recyclerView = findViewById<RecyclerView>(R.id.recyclerViewMain2)
        addNew.setOnClickListener {
            startActivityForResult(
                Intent(this, LoggedInUserView::class.java),
                ADD_PROFILE_REQUEST
            )
        }
        recyclerView.layoutManager = LinearLayoutManager(this)
        recyclerView.setHasFixedSize(true)
        recyclerView.adapter = adapterRoom
        @Suppress("DEPRECATION")
        profileViewModel = ViewModelProviders.of(this).get(ProfileViewModel::class.java)
        profileViewModel.allProfiles.observe(this,
            Observer<List<Profile>> { t -> adapterRoom.setProfiles(t!!) })


  }
}

类Main2Activity:AppCompatActivity(){
lateinit var FirebaseUser:FirebaseUser
lateinit var auth:FirebaseAuth
lateinit var userRef:数据库引用
//私有lateinit变量ProfileViewModel:ProfileViewModel
私有val添加配置文件请求=1
私有lateinit变量profileViewModel:profileViewModel
重写创建时的乐趣(savedInstanceState:Bundle?){
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main2)
Calendar.getInstance()
val bundle:bundle=intent.extras
val adapteroom=profileRecycleServiceAdapter()
val recyclerView=findviewbyd(R.id.recyclerViewMain2)
addNew.setOnClickListener{
startActivityForResult(
意图(这个LoggedInUserView::class.java),
添加\u配置文件\u请求
)
}
recyclerView.layoutManager=LinearLayoutManager(此)
recyclerView.setHasFixedSize(真)
recyclerView.adapter=adapterRoom
@压制(“反对”)
profileViewModel=ViewModelProviders.of(this.get)(profileViewModel::class.java)
profileViewModel.allProfiles.observe(这个,
观察者{t->adapterRoom.setProfiles(t!!)}
}
}
RecyclerView适配器:


class ProfileRecyclerViewAdapter :
    RecyclerView.Adapter<ProfileRecyclerViewAdapter.ProfileViewHolder>() {
    private var profiles: List<Profile> = ArrayList()

    override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ProfileViewHolder {
        val itemView = LayoutInflater.from(parent.context)
            .inflate(R.layout.profileview_item, parent, false)
        return ProfileViewHolder(itemView)
    }

    override fun onBindViewHolder(holder: ProfileViewHolder, position: Int) {
        val current = profiles[position]

        holder.ProfileNameItemView.text = current.profilename
        holder.ProfileunView.text = current.userLastname
        holder.ProfilebdView.text = current.bornDay
        holder.ProfilebmView.text = current.bornMonth
        holder.ProfilebyView.text = current.bornYear
    }


    override fun getItemCount(): Int {
        return profiles.size
    }

    fun setProfiles(profiles: List<Profile>) {
        this.profiles = profiles
        notifyDataSetChanged()
    }


    inner class ProfileViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
        val ProfileNameItemView: TextView = itemView.findViewById(R.id.ProfilenameIV)
        val ProfileunView: TextView = itemView.findViewById(R.id.ProfileUnIV)
        val ProfilebdView: TextView = itemView.findViewById(R.id.ProfileBdIV)
        val ProfilebmView: TextView = itemView.findViewById(R.id.ProfileBmIV)
        val ProfilebyView: TextView = itemView.findViewById(R.id.ProfileByIV)


    }
}

类配置文件RecycleServiceAdapter:
RecyclerView.Adapter(){
私有变量配置文件:List=ArrayList()
重写CreateViewHolder(父级:ViewGroup,viewType:Int):ProfileViewHolder{
val itemView=LayoutInflater.from(parent.context)
.充气(R.layout.profileview_项,父项,false)
返回ProfileViewHolder(itemView)
}
覆盖BindViewHolder(holder:ProfileViewHolder,位置:Int){
val当前=外形[位置]
holder.ProfileNameItemView.text=current.profilename
holder.ProfileunView.text=current.userLastname
holder.ProfilebdView.text=current.bornDay
holder.ProfilebmView.text=current.bornMonth
holder.ProfilebyView.text=current.bornYear
}
重写getItemCount():Int{
返回配置文件。大小
}
乐趣集配置文件(配置文件:列表){
this.profiles=配置文件
notifyDataSetChanged()
}
内部类ProfileViewHolder(itemView:View):RecyclerView.ViewHolder(itemView){
val ProfileNameItemView:TextView=itemView.findViewById(R.id.ProfilenameIV)
val ProfileunView:TextView=itemView.findViewById(R.id.ProfileUnIV)
val ProfilebdView:TextView=itemView.findViewById(R.id.ProfileBdIV)
val ProfilebmView:TextView=itemView.findViewById(R.id.ProfileBmIV)
val ProfilebyView:TextView=itemView.findViewById(R.id.ProfileByIV)
}
}

是否触发了
setProfiles
设置配置文件?我应该在哪里触发?活动\u main2的外观如何?只需简单的带有匹配参数和两个按钮的recyclerView即可。请显示您的配置文件RecyclerViewAdapters
设置配置文件
正在触发?我应该在哪里触发?活动\u main2的外观如何?简单即可带有匹配参数和两个按钮的recyclerView请显示您的配置文件RecyclerViewAdapter