Попробуйте этот код сделать один метод в основной деятельности, чтобы обновить панель инструментов, как показано ниже кода ..
fun updateToolbar(){
when(FragmentController.getFrontFragmentTag(this)){
FragmentController.EXAM_FRAGMENT->{
mIndexMenu= INDEX_ADD
updateToolbarTitle("Exam")
}
}
}
и создать отдельный класс для добавления фрагмента во всех других методах, таких как FragmentControl.kt.
fun getFrontFragmentTag(activity: FragmentActivity?): String? {
return activity?.supportFragmentManager?.findFragmentById(if (activity is Main2Activity) MAIN_ROOT else LOGIN_ROOT)?.tag
}
fun AppCompatActivity.addExamFragment(): Fragment {
mFragment = ExamFragment()
this.supportFragmentManager?.beginTransaction()?.replace(if (this is LoginActivity) LOGIN_ROOT else MAIN_ROOT, mFragment, EXAM_FRAGMENT)?.commit()
return mFragment as ExamFragment
}
и в вызове основного действия ниже кода добавьте фрагмент ..
addExamFragment()
и в файле examFragment в вызове метода onCreate ниже кода для обновления панели инструментов.
(activity as Main2Activity).updateToolbar()