You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Home Assistant中根据状态更改图标颜色

根据设备状态更改Home Assistant图标颜色的方法

针对你提供的洗衣机运行状态传感器配置,有两种常用方法可以实现根据状态改变图标颜色:

方法一:通过传感器配置结合state_color实现

Home Assistant的模板传感器支持state_color属性,开启后会根据状态值自动适配图标颜色。不过需要先简化传感器的状态值(避免带动态功率字符串,方便颜色映射),同时保留功率显示作为属性:

修改后的configuration.yaml配置:

washing_machine_running:
  friendly_name: "洗衣机运行状态"
  value_template: >
    {% if states('sensor.shelly_bathroom_washing_machine_power') != 'unknown' %}
      {% set power_consumption = states('sensor.shelly_bathroom_washing_machine_power') | float %}
      {% if power_consumption > 3 %}
        运行中
      {% else %}
        未运行
      {% endif %}
    {% else %}
      未运行
    {% endif %}
  # 添加属性显示实时功率
  attribute_templates:
    power_consumption: >
      {% if states('sensor.shelly_bathroom_washing_machine_power') != 'unknown' %}
        {{ states('sensor.shelly_bathroom_washing_machine_power') | float }}
      {% else %}
        0
      {% endif %}
  icon_template: >-
    {% if is_state('sensor.washing_machine_running', '运行中') %}
      mdi:washing-machine
    {% else %}
      mdi:washing-machine-off
    {% endif %}
  # 开启状态颜色适配
  state_color: true

配置完成后,在UI的Entities卡片中勾选「状态颜色」选项,设备运行时图标会显示默认激活色(如蓝色),停止时显示灰色。

方法二:在UI卡片中自定义样式(无需修改配置文件)

如果不想改动configuration.yaml,可以直接在UI编辑卡片时添加自定义样式,精准控制颜色:

用Entities卡片自定义样式

编辑Entities卡片时,在「样式」字段中添加以下代码:

style: |
  :host {
    --paper-item-icon-color: {% if states('sensor.washing_machine_running').startswith('Running') %}#2196F3{% else %}#9E9E9E{% endif %};
  }

将#2196F3替换为你想要的运行状态颜色,#9E9E9E替换为停止状态颜色(支持任意十六进制颜色码)。

用Template卡片灵活控制

也可以直接使用Template卡片,更直观地定义图标和颜色:

type: template
entity: sensor.washing_machine_running
icon: >-
  {% if states('sensor.washing_machine_running').startswith('Running') %}mdi:washing-machine{% else %}mdi:washing-machine-off{% endif %}
icon_color: >-
  {% if states('sensor.washing_machine_running').startswith('Running') %}blue{% else %}gray{% endif %}
name: 洗衣机运行状态
state: "{{ states('sensor.washing_machine_running') }}"

这里的icon_color支持直接使用颜色名称(如blue、red)或十六进制颜色码。

内容的提问来源于stack exchange,提问作者user829174

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 00:11:13