如何更新选项菜单项图标?

时间:2019-05-31 23:55:26

标签: android kotlin android-actionbar

这是我的代码,我想根据服务器中请求的数据来更新菜单项图标,这就是为什么我需要访问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
          }
        })
  }

0 个答案:

没有答案