Вернуться обратно в Main Activity из фрагмента
При переходе во фрагмент и попытки вернуться обратно с помощью кнопки назад, происходит выход из приложения, хотя вроде как в BackStack я добавляю фрагменты. Не знаю в чем ошибка, буду благодарна помощи.
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
}
override fun onBackPressed() {
val fragmentManager: FragmentManager = supportFragmentManager
if (fragmentManager.backStackEntryCount == 1) {
finish()
} else {
fragmentManager.popBackStack()
}
}
override fun onCreateOptionsMenu(menu: Menu?): Boolean {
val menuInflater: MenuInflater = menuInflater;
menuInflater.inflate(R.menu.main_menu, menu)
return super.onCreateOptionsMenu(menu)
}
override fun onOptionsItemSelected(item: MenuItem): Boolean {
val fragmentManager = supportFragmentManager
when (item.itemId) {
R.id.exit -> {
Toast.makeText(this, R.string.exit, Toast.LENGTH_SHORT).show()
finish()
}
R.id.search -> {
val searchFragment:SearchFragment = SearchFragment()
fragmentManager.beginTransaction()
.replace(R.id.container, searchFragment)
.addToBackStack(searchFragment.javaClass.name)
.commit()
Toast.makeText(this, R.string.search, Toast.LENGTH_SHORT).show()
}
R.id.settings -> {
val settingsFragment: SettingsFragment = SettingsFragment()
fragmentManager.beginTransaction()
.replace(R.id.container, settingsFragment)
.addToBackStack(settingsFragment.javaClass.name)
.commit()
Toast.makeText(this, R.string.settings, Toast.LENGTH_SHORT).show()
}
}
return super.onOptionsItemSelected(item)
}