expo-symbols fill support on android
Lukas
I really like this library. However it is missing one setting for android that would be great to have and thats the fill setting. This would make the library match between ios and android much more since on ios these are distinct icons but for material icons they are combined and without this you cannot use filled icons
Photo Viewer
View photos in a modal
kudochien
hi there! that's exactly the reason i introduced the Icon component in expo-ui (https://docs.expo.dev/versions/latest/sdk/ui/jetpack-compose/icon/). since "filled" is one other variant that i think having an extra font file is not ideal. android's material symbol practice is to let developers to download the neccessary material symbol xml files. same idea applies to the expo-ui Icon component. please give it a try if that's a good fit for you. thank you!
Brendon McCarthy
kudochien
Thanks for pointing to @expo/ui Icon and @expo/material-symbols. That makes sense for Android-native XML drawable usage, especially where avoiding extra font variants is a priority.
The remaining gap is for apps using expo-symbols as the cross-platform abstraction across iOS, Android, and web. expo-symbols already renders Material Symbols on Android and web, but it currently exposes weight without exposing the Material Symbols FILL axis. That makes common selected states like favorite, bookmark, saved, and selected tab inconsistent with iOS, where SF Symbols can use .fill variants.
Would the team consider a Material axes API on SymbolView, for example material={{ fill: true }}, that applies to Android/web font-rendered Material Symbols? The goal would be support for any Material Symbol glyph with FILL@1, not a special case for a single icon. This would complement the @expo/ui XML drawable path rather than replace it, and would preserve expo-symbols as the simpler cross-platform path when web support matters.
https://github.com/expo/expo/issues/46850