Невозможно изменить заголовок ярлыка с помощью NavigationComponents

Я пытаюсь изменить заголовок панели приложений, помеченный на моем навигационном графике в моем фрагменте

Я получаю значение из аргументов в качестве заголовка этого пункта назначения, но пытаюсь изменить его и не могу

 override fun onActivityCreated(savedInstanceState: Bundle?) {
        super.onActivityCreated(savedInstanceState)

        Navigation.findNavController(requireActivity(),R.id.nav_host_fragment).addOnDestinationChangedListener { controller, destination, arguments ->
            when(destination.id){
                R.id.navigation_landing -> {
                    requireActivity().title = category!!.name
                }
            }
        }
}

Я не использую панель инструментов, я просто использую ярлык пункта назначения, здесь что-то не так?




Ответы (1)


Решил, добавив

<fragment
        android:id="@+id/navigation_landing"
        android:name="ui.landing.LandingFragment"
        android:label="{dynamicTitle}"
        tools:layout="@layout/landing_fragment" >
        <argument
            android:name="dynamicTitle"
            app:argType="string"/>

    </fragment>

и передача dynamicTitle в виде пакета

 bundle.putString("dynamicTitle","MyawesomeTitle")
        findNavController().navigate(R.id.action_navigation_home_to_landingFragment,bundle)

Спасибо Яну, покажите ему палец вверх

person SNM    schedule 07.03.2020