Фрагмент объявленного целевого фрагмента, который не принадлежит этому FragmentManager - Android - PullRequest
1 голос
/ 05 февраля 2020

Я использую от AppCompatDialogFragment в моем DaggerFragment, но при запуске моего приложения выдается сообщение об ошибке:

java.lang.IllegalStateException: Fragment CourseTypeListDialogFragment{ab0b7f3 (3d65d8c0-5c75-4b92-8002-1852a8aa58b7) } declared target fragment CoursesFragment{e2a5105 (e277e6f4-7e61-4114-8eb4-d0143a07ac0c) id=0x7f0800cc} that does not belong to this FragmentManager!

Я открыл его, как показано ниже:

@OnClick(R.id.btnCourseType)
fun btnCourseTypeClick(){
    val fm = activity!!.supportFragmentManager
    val courseTypeListDialogFragment =
        CourseTypeListDialogFragment()
    courseTypeListDialogFragment.setCancelable(false)
    courseTypeListDialogFragment.setStyle(
        DialogFragment.STYLE_NO_TITLE,
        0
    )
    courseTypeListDialogFragment.setTargetFragment(this@CoursesFragment, 1)
    courseTypeListDialogFragment.show(fm, "")

}

Ответы [ 2 ]

0 голосов
/ 05 февраля 2020

Я удалил courseTypeListDialogFragment.setTargetFragment(this@CoursesFragment, 1) и теперь хорошо работаю.

0 голосов
/ 05 февраля 2020

Вы не добавили фрагмент в менеджер фрагментов

fm.beginTransaction().replace(R.id.someFrame, courseTypeListDialogFragment).commitAllowingStateLoss()

только тогда вы сможете использовать show(), hide() для этого фрагмента

...