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 tonal warna dinamis
Mulai Android 12, palet tonal warna dinamis berikut didukung:
Masing-masing terdiri dari kumpulan 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 dihasilkan 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. Ini tercantum untuk menghasilkan 65 warna dinamis yang digunakan oleh aplikasi:
TONAL_SPOT
adalah palet dengan tingkat kecerahan sedang yang menggunakan warnasystem_accent3_0
yang analog dengan warnasystem_accent1_0
(dibawa dari rilis Android 12 dan sedikit disesuaikan).VIBRANT
adalah palet dengan vibrasi tinggi yang memadukan pergeseran halus antara warna secara harmonis.EXPRESSIVE
adalah palet dengan vibrasi tinggi yang menggabungkan warna aksen yang tidak terduga dan unik.SPRITZ
adalah palet dengan vibrasi rendah yang menciptakan sapuan lembut di antara warna.RAINBOW
menggunakan aksen kromatik dan permukaan netral untuk menciptakan pengalaman warna yang lebih halus bagi pengguna.- Ini TIDAK DISARANKAN untuk digunakan dengan ekstraksi warna berbasis wallpaper dan sebaiknya digunakan dengan tema warna statis.
FRUIT_SALAD
menyediakan warna dua tone untuk memberi pengguna lebih banyak ekspresi.- Ini TIDAK DISARANKAN untuk digunakan dengan ekstraksi warna berbasis wallpaper dan sebaiknya digunakan dengan tema warna statis.
Tema sistem didorong oleh setelan yang sama seperti di Android 12,
yaitu Settings.Secure.THEME_CUSTOMIZATION_OVERLAY_PACKAGES
. Untuk Android
13, hanya memerlukan satu kunci di JSON-nya yang mengirimkan
warna sumber untuk menghasilkan 65 palet warna:
{
"android.theme.customization.system_palette":"746BC1"
}
Gaya tema default adalah TONAL_SPOT
, tetapi Anda dapat menentukan salah satu gaya tema lainnya dengan kunci tambahan dengan JSON di atas:
{
"android.theme.customization.system_palette":"746BC1"
"android.theme.customization.theme_style":"EXPRESSIVE"
}
Mengintegrasikan warna dinamis
Untuk panduan mengintegrasikan warna dinamis, lihat Mengintegrasikan Desain Material You.
Pertanyaan Umum (FAQ)
Apa yang disertakan dalam API palet tonal dinamis?
Ada lima palet tonal:
Setiap palet tonal memiliki 13 nilai warna yang diakhiri dengan indeks 0, 10, 50, 100, 200, 300, 400, 500, 600, 700, 800, 900, dan 1000.
API yang dihasilkan adalah kombinasi dari nama palet tonal, yang diakhiri dengan indeks. Misalnya:
R.color#system_accent1_10
Bagaimana cara membuat palet tone dinamis?
Palet tonal dinamis harus dibuat dari satu warna sumber yang harus
berasal dari wallpaper menggunakan
com.android.systemui.monet.ColorScheme#getSeedColors
, yang menyediakan beberapa
warna sumber yang valid. Jika tidak ada warna yang diberikan yang memenuhi persyaratan warna
sumber, satu warna sumber harus menggunakan nilai 0xFF1B6EF3
.