这是我的代码,我想根据服务器中请求的数据来更新菜单项图标,这就是为什么我需要访问onViewCreated中的菜单项的原因,因为我认为我现在正在做的解决方案不适合观察数据onPrepareOptionsMenu?
override fun onCreateOptionsMenu(menu: Menu, inflater: MenuInflater) {
super.onCreateOptionsMenu(menu, inflater)
inflater.inflate(R.menu.menu_favorite, menu)
}
override fun onPrepareOptionsMenu(menu: Menu) {
super.onPrepareOptionsMenu(menu)
viewModel.favorite
.observe(viewLifecycleOwner, Observer {
if (it.data != null) {
menu.findItem(R.id.action_favorite)?.icon = true
}
})
}