Dinamik renk

Material You tasarımı, Android 12 sürümüyle kullanıma sunuldu ve Android 13 ile genişletildi.

Bu sayfada, daha zengin dinamik renk desteğiyle entegrasyon yapmanıza yardımcı olmak için Material You mantıkındaki güncellemeler ele alınmaktadır.

Dinamik renk ton paletleri

Android 12'den itibaren aşağıdaki dinamik renk ton paletleri desteklenmektedir:

Her biri, R.color bölümünde açıklandığı gibi çeşitli parlaklık değerlerine sahip 13 renkten oluşur ancak Android sistemi tarafından çalışma zamanında dinamik olarak oluşturulabilecek tanımlanmamış ton ve renk değerlerine sahiptir.

Dinamik renk için tema stilleri

Android 13'ten itibaren, geliştirici ihtiyaçlarını ve kontrast beklentilerini karşılayan dinamik renk algoritmasındaki varyasyonlarla altı farklı tema stili desteklenir. Bunlar, uygulamalar tarafından kullanılan 65 dinamik rengi oluşturmak için listelenmiştir:

  • TONAL_SPOT, system_accent1_0 rengine benzer bir system_accent3_0 rengi kullanan, orta canlılıkta bir palettir (Android 12 sürümünden aktarılan ve biraz ayarlanmış).
  • VIBRANT, renklerdeki ince geçişleri uyumlu bir şekilde harmanlayan, yüksek canlılığa sahip bir palettir.
  • EXPRESSIVE, beklenmedik ve benzersiz vurgu renklerini bir araya getiren yüksek canlılıkta bir palettir.
  • SPRITZ, renkler arasında yumuşak bir geçiş sağlayan, düşük canlılığa sahip bir palettir.
  • RAINBOW, kullanıcılara daha hoş bir renk deneyimi sunmak için hem kromatik vurgular hem de nötr yüzeyler kullanır.
    • Bu özelliğin, duvar kağıdına dayalı renk ayıklama işleminde kullanılması ÖNERİLMEZ. Bunun yerine, statik renk temalarıyla kullanılmalıdır.
  • FRUIT_SALAD, kullanıcılara daha fazla ifade sunmak için iki tonlu renkler sağlar.
    • Duvar kağıdına dayalı renk ayıklama ile kullanılması ÖNERİLMEZ. Bunun yerine statik renk temalarıyla kullanılmalıdır.

Sistem teması, Android 12'dekiyle aynı ayar olan Settings.Secure.THEME_CUSTOMIZATION_OVERLAY_PACKAGES ile belirlenir. Android 13 için JSON'da, 65 renk paleti oluşturmak üzere kaynak rengi gönderen yalnızca bir anahtar gerekir:

{
    "android.theme.customization.system_palette":"746BC1"
}

Varsayılan tema stili TONAL_SPOT'tür ancak isteğe bağlı olarak yukarıdaki JSON ile ek bir anahtar kullanarak diğer tema stillerinden birini belirtebilirsiniz:

{
    "android.theme.customization.system_palette":"746BC1"
    "android.theme.customization.theme_style":"EXPRESSIVE"
}

Dinamik rengi entegre etme

Dinamik rengi entegre etmeyle ilgili kurallar için Material You tasarımını entegre etme başlıklı makaleyi inceleyin.

Sık sorulan sorular (SSS)

Dinamik ton paleti API'si neleri içerir?

Dinamik ton paleti nasıl oluşturulur?

Dinamik bir ton paleti, birden fazla geçerli kaynak rengi sağlayan com.android.systemui.monet.ColorScheme#getSeedColors kullanılarak duvar kağıdından elde edilmesi gereken tek bir kaynak renkten oluşturulmalıdır. Sağlanan renklerden hiçbiri kaynak renk şartını karşılamıyorsa tek kaynak renk için 0xFF1B6EF3 değeri kullanılmalıdır.