У меня есть фрагмент, который вызывается из экрана activity_main, когда щелкает опция в главном меню. Я пытаюсь закрыть фрагмент и снова показать экран activity_main при нажатии кнопки отмены. У меня есть пользовательский ввод на экране Activity_main, который я хотел бы по-прежнему там, если фрагмент закрывается при нажатии кнопки отмены, но в этот момент я соглашаюсь с тем, что фрагмент просто закрывается, и Activity_main показывает обратно в исходное состояние.
Я использую androidx, и все ответы, которые я нашел до сих пор, были совместимы с android .support.v7
Это код, который у меня есть в моем фрагменте, он ничего не делает при все, когда я нажимаю кнопку «Отмена», фрагмент просто продолжает оставаться там над Activity_main.
class SaveFragment: Fragment() {
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
val view: View = inflater.inflate(R.layout.savefragment, container, false)
return view
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
b_cancel.setOnClickListener {
fragmentManager?.popBackStack()
}
}
}
Вот код, который вызывает savefragment из MainActivity:
override fun onOptionsItemSelected(item: MenuItem): Boolean {
return when (item.itemId) {
R.id.i_save -> {
val SaveFragment = SaveFragment()
supportFragmentManager.beginTransaction().replace(R.id.activity_main_main, SaveFragment).commit()
true
}
R.id.i_recall -> {
val RecallFragment = RecallFragment()
supportFragmentManager.beginTransaction().replace(R.id.activity_main_main, RecallFragment).commit()
true
}
else -> super.onOptionsItemSelected(item)
}
}
Любая помощь вообще в Kotlin будет принята с благодарностью.