В моем файле MainActivity.kt
я могу получить доступ к supportActionBar.title
и установить заголовок.
В TitleScreenFragment.kt
я не могу получить доступ:
activity.supportActionBar.title
и когда я пытаюсьпросто используйте activity.actionBar.title
, это значение равно нулю.
Как мне получить доступ к activity.supportActionBar.title
из моего кода фрагмента?
MainActivity.kt:
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
val binding = DataBindingUtil.setContentView<ActivityMainBinding>(this,
R.layout.activity_main)
val navController = this.findNavController(R.id.nav_host_fragment)
NavigationUI.setupActionBarWithNavController(this, navController)
//THIS WORKS HOW DO I ACCESS THIS FUNCTIONALITY FROM FRAGMENT CODE???
supportActionBar?.title = "Ingredient Display"
}
override fun onSupportNavigateUp(): Boolean {
val navController = this.findNavController(R.id.nav_host_fragment)
return navController.navigateUp()
}
}
TitleScreenFragment.kt
class TitleScreenFragment : Fragment() {
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
// Setup the binding object with the layout and inflate it
val binding = DataBindingUtil.inflate<FragTitleBinding>(inflater, R.layout.frag_title, container, false)
// Set navigation action as an onclicklistener for button
binding.btnBeginInput.setOnClickListener{
view?.findNavController()?.navigate(R.id.action_titleScreenFragment_to_ingredientInputFragment)
}
//THIS IS NULL
println(activity?.actionBar?.title)
// return the inflated object in the binding
return binding.root
}
}