我有一个带有多个按钮的主页片段,当我单击联系人按钮时,会打开另一个片段。在这个片段中,我有两个子片段和两个按钮,我可以使用这些按钮在这些子片段之间切换。问题是当我按下Back Button时,它会在子片段之间切换回来,然后才返回主片段,但我想直接返回主片段。
这就是我打开子片段的方式:
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
val contactsListFragment = ContactsListFragment()
val groupsListFragment = GroupsListFragment()
activity?.title = getString(R.string.contacts_and_groups)
openChildFragment(contactsListFragment)
binding.contactsButton.setOnClickListener {
openChildFragment(contactsListFragment)
}
binding.groupsButton.setOnClickListener {
openChildFragment(groupsListFragment)
}
}
private fun openChildFragment(fragment: Fragment) {
val childFragmentManager = childFragmentManager
val transaction: FragmentTransaction = childFragmentManager.beginTransaction()
transaction.replace(binding.contactsGroupsFl.id, fragment)
transaction.addToBackStack(null)
transaction.commit()
}
如果有人可以帮助我解决这个问题,那就太好了。谢谢!