Jetpack Compose Glimmer'da Icon bileşeni, tek renkli simgeleri oluşturmak için kullanılan bir kullanıcı arayüzü öğesidir. Simge, renklendirme ve ölçeklendirme işlemlerini akıllıca yönetir. Böylece, GlimmerTheme ile okunaklı ve görsel olarak tutarlı kalır.
Boyutlar
Simgeler varsayılan olarak LocalIconSize tarafından sağlanan boyutta olsa da belirli bir boyut ayarlamak için sağlanan üç simge boyutunu da kullanabilirsiniz. Bu boyutlar, aşağıdaki bağlamlarda da varsayılan olarak kullanılır:
| Boyut jetonu | Varsayılan kullanım |
|---|---|
|
Standart liste öğeleri veya küçük çipler için. |
|
Bağımsız simgeler ve başlık çipleri için. |
|
Kartlar gibi çok vurgulu bileşenler için. |
Simge kaynakları
Simgeler kaynak olarak ImageVector, ImageBitmap veya Painter öğesini kabul edebilir. Kendi simgelerinizi tanımlarken, ekran gözlüklerinde her ölçekte net görüntü oluşturmak için mümkün olduğunda ImageVector simgesini kullanın.
Renk ve Tonlama
- Otomatik renk tonu: Simge, üst yüzey tarafından sağlanan
LocalContentColorLocalContentColorgibi birsurfaceveyaButtontarafından sağlananLocalContentColorLocalContentColorgibi birsurfaceveyaButtontarafından sağlananLocalContentColorLocalContentColorgibi birsurfaceveyaButtontarafından sağlananLocalContentColorLocalContentColorgibi birsurfaceveyaButtontarafından sağlananLocalContentColorLocalContentColorgibi birsurfaceveyaButtontarafından sağlananLocalContentColorLocalContentColorgibi birsurfaceveyaButtontarafından sağlananLocalContentColorLocalContentColorgibi birsurfaceveyaButtontarafından sağlananLocalContentColorLocalContentColorgibi birsurfaceveyaButtontarafından sağlananLocalContentColorLocalContentColorgibi birsurfaceveyaButtontarafından sağlananLocalContentColorLocalContentColorgibi birsurfaceveyaButtontarafından sağlananLocalContentColorLocalContentColorgibi birsurfaceveyaButtontarafından sağlananLocalContentColorLocalContentColorgibi birsurfaceveyaButtontarafından sağlananLocalContentColorLocalContentColorgibi birsurfaceveyaButtontarafından sağlananLocalContentColorLocalContentColorgibi birsurfaceveyaButtontarafından sağlananLocalContentColorLocalContentColorgibi birsurfaceveyaButtontarafından sağlananLocalContentColorLocalContentColorgibi bir - Manuel Renklendirme: Belirli bir rengi uygulamak için
tintparametresini kullanın. - Çok Renkli Öğeler: Renklendirilmemesi gereken simgeler (ör. çok renkli marka logoları) için
tint = Color.Unspecifieddeğerini ayarlayın. - Genel resimler: Simge boyutlandırma ve renklendirme kurallarına uymayan fotoğraflar veya genel resimler için standart
androidx.compose.foundation.Imagesimgesini kullanın.
Örnek: Temel simge
Aşağıdaki kod, temel bir simge oluşturur:
@Composable fun IconSample() { Icon(FavoriteIcon, contentDescription = "Localized description") }
Örnek: Renkli simgeler
Aşağıdaki kod, temanın birincil rengini kullanarak renkli bir simge oluşturur:
@Composable fun ColoredIconSample() { Icon( FavoriteIcon, tint = GlimmerTheme.colors.primary, contentDescription = "Localized description", ) }
Örnek: Farklı boyutlarda simgeler
Aşağıdaki kod, belirli bir boyuta göre değiştirilmiş bir simge oluşturur:
@Composable fun SizedIconSample() { Icon( FavoriteIcon, contentDescription = "Localized description", modifier = Modifier.size(GlimmerTheme.iconSizes.large), ) }
Kodla ilgili önemli noktalar
- Simgenin boyutu, değiştiriciyle birlikte
GlimmerTheme.iconSizeskullanılarak özelleştirilir. Simgeler için varsayılan değerGlimmerTheme.iconSizes.medium'dir. Kullanıcı arayüzünüzde tutarlılığı korumak için değerleri sabit kodlamak yerine bu boyutları kullanın. - Simge için yerelleştirilmiş bir
contentDescriptionsağlar. Simge tamamen dekoratif amaçlı olmadığı sürece bu açıklamaları her zaman sağlayın.