Icons¶
Die App verwendet tintbare Material-Icons mit einer kleinen, bewusst kontrollierten Registry.
Warum eine feste Registry¶
Vorteile:
- definierte JSON-Namen
- konsistente Darstellung
- sichere Tintbarkeit
- keine Abhängigkeit von beliebigen Stringnamen aus externen Libraries
Auflösungsregeln¶
Vor der Suche wird der Icon-Name normalisiert:
- trimmen
- in Kleinbuchstaben umwandeln
-durch_ersetzen- Leerzeichen durch
_ersetzen
Dadurch sind diese Namen gleichwertig:
lightbulblight-bulblight bulb
Vollständige Icon-Liste¶
| JSON-Name | Alias(e) | Material-Icon |
|---|---|---|
air |
- | Icons.Outlined.Air |
bike |
bicycle |
Icons.Outlined.DirectionsBike |
bolt |
- | Icons.Outlined.Bolt |
bus |
- | Icons.Outlined.DirectionsBus |
camera |
camera_alt |
Icons.Outlined.CameraAlt |
door |
door_front |
Icons.Outlined.DoorFront |
home |
- | Icons.Outlined.Home |
light |
lightbulb |
Icons.Outlined.Lightbulb |
lock |
- | Icons.Outlined.Lock |
lock_open |
- | Icons.Outlined.LockOpen |
pc |
computer |
Icons.Outlined.Computer |
power |
power_settings_new |
Icons.Outlined.PowerSettingsNew |
remote |
- | Icons.Outlined.SettingsRemote |
router |
- | Icons.Outlined.Router |
sensor |
sensors |
Icons.Outlined.Sensors |
speaker |
- | Icons.Outlined.Speaker |
temperature |
thermostat |
Icons.Outlined.DeviceThermostat |
train |
- | Icons.Outlined.Train |
tram |
- | Icons.Outlined.Tram |
tv |
- | Icons.Outlined.Tv |
video |
videocam |
Icons.Outlined.Videocam |
water |
water_drop |
Icons.Outlined.WaterDrop |
wifi |
- | Icons.Outlined.Wifi |
window |
- | Icons.Outlined.Window |
Statisches Icon¶
Dynamisches Icon¶
Wenn device.icon einen nicht vorhandenen Namen liefert:
- die App fällt auf
icon.namezurück - wenn auch der fehlt oder nicht auflösbar ist, wird ein vorhandenes
emojigenutzt
Emoji-Fallback¶
Wichtig:
- Emojis sind visuell vom Systemfont abhängig
- viele Emojis sind mehrfarbig
- deshalb lassen sie sich nicht so zuverlässig einfärben wie Material-Icons
Kein Icon anzeigen¶
Wenn gar kein Icon gewünscht ist:
content.iconeinfach ganz weglassen
Dann rendert die App auch keinen impliziten Fallback.
Empfehlung¶
Für produktive Dashboards:
icon.namestatt Emoji bevorzugen- Emojis nur als bewusste Ausnahme einsetzen
- dynamische Icons über
namePathnur mit Werten aus der bekannten Registry befüllen