невозможно обработать заголовок и видимость кнопки назад во фрагменте backpress - PullRequest
0 голосов
/ 06 января 2020

Я пытаюсь перейти от одного фрагмента к другому фрагменту, поэтому, когда я нахожусь в первом фрагменте, мой фрагмент title называется "title-A", поэтому теперь из фрагмента titleA я перехожу к фрагменту titleB и здесь я вижу кнопку "Назад" и собственно title of title-B.

Теперь, когда я нажимаю кнопку «Назад», я перемещаюсь к фрагменту A, но заголовок на панели действий остается таким же, как для фрагмента B, а также для видимости кнопки «Назад» автоматически устанавливается значение «истина». не нужен фрагмент A, поскольку он является домашним фрагментом. Пожалуйста, помогите мне избавиться от этой проблемы.

Ваша помощь будет высоко оценена.

В моей деятельности это метод обратной печати

override fun onBackPressed() {
        if (fragmentManager.backStackEntryCount == 0) {
            super.onBackPressed()
        } else if (fragmentManager.backStackEntryCount == 1) {
            moveTaskToBack(false)
        } else {
            fragmentManager.popBackStack()
        }
    }

val fragmentTransaction1 = supportFragmentManager.beginTransaction()
            fragmentTransaction1.replace(R.id.container, DashBoardFragment())
            fragmentTransaction1.commit()
            supportFragmentManager.addOnBackStackChangedListener {
                if (supportFragmentManager.backStackEntryCount == 0) {
                    Toast.makeText(this,"0",Toast.LENGTH_SHORT).show()
                    getActionBar()?.setDisplayHomeAsUpEnabled(false);
                    getActionBar()?.setDisplayShowTitleEnabled(false);
                    getActionBar()?.setDisplayShowHomeEnabled(false);
                    supportActionBar!!.setTitle("O Gas")

                }
            }

В моем фрагменте A у меня есть следующее

getActivity()?.getActionBar()?.setDisplayHomeAsUpEnabled(false);
        getActivity()?.getActionBar()?.setDisplayShowTitleEnabled(false);
        getActivity()?.getActionBar()?.setDisplayShowHomeEnabled(false);
        (activity as AppCompatActivity).supportActionBar!!.setTitle("fragment-A")

В моем фрагменте B у меня есть следующее

(activity as AppCompatActivity).supportActionBar!!.setDisplayHomeAsUpEnabled(true)
        (activity as AppCompatActivity).supportActionBar!!.setDisplayShowHomeEnabled(false)

        (activity as AppCompatActivity).supportActionBar!!.setTitle("Frgment-B")
...