Android FireBaseRecyclerAdapter如何在单击项目时打开片段并显示数据?

Android FireBaseRecyclerAdapter如何在单击项目时打开片段并显示数据?,android,kotlin,firebase-realtime-database,android-recyclerview,firebaseui,Android,Kotlin,Firebase Realtime Database,Android Recyclerview,Firebaseui,我想在从FireBaseRecyclerAdapter单击项目时打开一个新片段 PersonAdapter.kt: override fun onBindViewHolder( holder: personsViewholder, position: Int, model: Exercise ) { holder.title.text = model.title holder.description.text = mo

我想在从FireBaseRecyclerAdapter单击项目时打开一个新片段

PersonAdapter.kt:

override fun onBindViewHolder(
        holder: personsViewholder,
        position: Int, model: Exercise
    ) {


        holder.title.text = model.title

        holder.description.text = model.description
}
目前,我可以用数据填充recyclerview,但如何将这些数据传递给新片段,例如PersonDetailFragment

我试过的

 var activity: AppCompatActivity = it.context as AppCompatActivity

                   activity.supportFragmentManager.beginTransaction()
                  .replace(R.id.chat_profile_dimmer, ExercisesFragment(model.title, model.description)).addToBackStack(null).commit()

我已经尝试了一些方法,但似乎没有任何效果。

您可以使用回调来实现这一点。按照以下步骤操作:

  • 在适配器构造函数中进行回调

    class YourAdapter(私有val回调:(DataTypeToBeSent)->Unit):…

  • 在BindViewHolder中的

    holder.view.setOnClickListener{

    回调.调用(模型)

    }

  • 这样,每次在RecyclerView中单击按钮/视图时,您将在调用适配器的视图(活动/片段)中获得数据


    然后从该视图(活动/片段)启动片段。

    是否尝试从xml文件传递父视图并在其上设置click listener?例如:holder.parentView.setClickListner。。。。。。