В случае, если кто-то еще придет и будет интересоваться, как go об этом. Я решил эту проблему, передав класс фрагмента диалога (FragmentNewTrips) через панель просмотра, а затем в дочерний фрагмент, где я установил его в качестве слушателя.
Итак, когда я определил адаптер, я передал слушатель, который был фрагментом диалога
AdapterPagerTrips(childFragmentManager, tripIds, this)
Затем внутри адаптера я передал класс фрагмента диалога соответствующему фрагменту, который нуждался в нем, вот так
class AdapterPagerTrips (fragmentManager: FragmentManager, val tripIds: ArrayList<String?>,
val listener: FragmentNewTrips):FragmentStatePagerAdapter(fragmentManager,BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT) {
// 2
override fun getItem(position: Int): Fragment {
if (position == 0) return FragmentNewTripsTypes.newInstance(listener)
return FragmentNewTripsResults.newInstance(tripIds, listener)
}
// 3
override fun getCount(): Int {
return 2
}
}
И у каждого фрагмента был объект-компаньон, который установил бы слушателя
companion object {
fun newInstance(tripIds: ArrayList<String?>, listener: FragmentNewTrips) = FragmentNewTripsResults().apply {
arguments = Bundle().apply { putStringArrayList(TRIPIDS, tripIds) }
this.listener = listener
}
}