【问题标题】:Kotlin - Change bottomNavigationView icon color dynamicallyKotlin - 动态更改bottomNavigationView图标颜色
【发布时间】:2020-11-07 20:11:09
【问题描述】:

在我的视图模型类中,我有一个列表。

想法是当这个列表不为空时,我bottomnavigationview的卡片图标变为红色。

使用下面的代码,我只能更改 icon 的背景颜色。但我需要更改图标颜色。

代码:

class Viewmodel : ViewModel()

val listModel = MutableLiveData<List<ModelCart>>()
 

 fun changeColor(view:View) {

        if (listModel.value != null)

          view.background = ColorDrawable(Color.RED)
    }

在我的活动中:


 bottomNavigationView.setOnNavigationItemSelectedListener { menuItem ->

  viewmodel.changeColor(this.bottomNavigationView.findViewById(R.id.cart))

   when (menuITem.itemId) {...}

如何专门更改购物车的图标颜色?

非常感谢您的帮助。

【问题讨论】:

  • 您应该通过 listModel.observe 在 UI 上订阅 LiveData 并跟踪更改

标签: android kotlin icons bottomnavigationview


【解决方案1】:

bottomNavigationView 中图标的颜色是根据所选 Theme 中的 colorPrimary 设置的。

所以要改变bottomNavigationView的颜色,创建不同颜色的主题,动态改变bottomNavigationView的主题或样式

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-04-21
    • 1970-01-01
    • 1970-01-01
    • 2014-08-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多