Android:如何覆盖片段中的导航抽屉工具栏菜单

时间:2019-09-07 15:21:04

标签: android kotlin navigation-drawer android-toolbar

我正在创建一个带有导航抽屉的应用程序,我需要在特定片段中编辑他的工具栏。

我试图通过覆盖片段类中的'onCreateOptionsMenu'函数来使其膨胀:

override fun onCreateOptionsMenu(menu: Menu, inflater: MenuInflater) {
    inflater.inflate(R.menu.menu_activity_main, menu)
    super.onCreateOptionsMenu(menu, inflater)
}

我希望在操作栏菜单上覆盖“ menu_activity_main”菜单,但不是。

当前看起来像这样:https://prnt.sc/p32sj5

但是我想要这个菜单:https://prnt.sc/p32tp4

1 个答案:

答案 0 :(得分:0)

这可能是因为您没有在Fragment类中调用setHasOptionMenu(Boolean)方法(正如onCreateOptionsMenu方法的注释所指定的那样)。

最好将其放在您的onCreate生命周期挂钩中:

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setHasOptionMenu(true)
    // ...
}