Warna dinamis

Desain Material You diluncurkan dengan rilis Android 12 dan diperluas dengan Android 13.

Halaman ini berfokus pada update pada logika Material You untuk membantu Anda berintegrasi dengan dukungan warna dinamis yang lebih kaya.

Palet tone warna dinamis

Mulai Android 12, palet warna tonal dinamis berikut didukung:

Setiap palet terdiri dari 13 warna dengan berbagai nilai luminans yang ditentukan seperti yang dijelaskan di R.color, tetapi dengan nilai hue dan chroma yang tidak ditentukan yang dapat dibuat secara dinamis oleh sistem Android saat runtime.

Gaya tema untuk warna dinamis

Mulai Android 13, enam gaya tema yang berbeda didukung dengan variasi pada algoritma warna dinamis yang mempertahankan kebutuhan developer dan ekspektasi kontras. Berikut adalah daftar untuk membuat 65 warna dinamis yang digunakan oleh aplikasi:

  • TONAL_SPOT adalah palet dengan tingkat kecerahan sedang yang menggunakan warna system_accent3_0 yang analog dengan warna system_accent1_0 (dipertahankan dari rilis Android 12 dan disesuaikan sedikit).
  • VIBRANT adalah palet dengan vibrasi tinggi yang memadukan pergeseran halus antarwarna secara harmonis.
  • EXPRESSIVE adalah palet dengan vibrasi tinggi yang memadukan warna aksen yang tidak terduga dan unik.
  • SPRITZ adalah palet dengan vibrasi rendah yang menciptakan nuansa lembut di antara warna.
  • RAINBOW menggunakan aksen kromatik dan permukaan netral untuk menciptakan pengalaman warna yang lebih halus bagi pengguna.
    • Penggunaan ini TIDAK DISARANKAN untuk digunakan dengan ekstraksi warna berbasis wallpaper dan sebaiknya digunakan dengan tema warna statis.
  • FRUIT_SALAD menyediakan warna dua nuansa untuk memberikan lebih banyak ekspresi kepada pengguna.
    • Penggunaan ini TIDAK DISARANKAN untuk digunakan dengan ekstraksi warna berbasis wallpaper dan sebaiknya digunakan dengan tema warna statis.

Tema sistem didasarkan pada setelan yang sama seperti di Android 12, yaitu Settings.Secure.THEME_CUSTOMIZATION_OVERLAY_PACKAGES. Untuk Android 13, hanya diperlukan satu kunci di JSON yang mengirimkan warna sumber untuk membuat 65 palet warna:

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

Gaya tema default adalah TONAL_SPOT, tetapi Anda dapat secara opsional menentukan salah satu gaya tema lainnya dengan kunci tambahan pada JSON di atas:

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

Mengintegrasikan warna dinamis

Untuk mengetahui panduan tentang mengintegrasikan warna dinamis, lihat Mengintegrasikan Desain Material You.

Pertanyaan Umum (FAQ)

Apa saja yang termasuk dalam Dynamic Tonal Palette API?

Bagaimana cara membuat palet tone dinamis?

Palet tone dinamis harus dibuat dari satu warna sumber yang harus didapatkan dari wallpaper menggunakan com.android.systemui.monet.ColorScheme#getSeedColors, yang menyediakan beberapa warna sumber yang valid. Jika tidak ada warna yang diberikan memenuhi persyaratan warna sumber, satu warna sumber harus menggunakan nilai 0xFF1B6EF3.