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 pada
R.color
,
tetapi dengan nilai hue dan kroma yang tidak ditentukan yang dapat dihasilkan secara dinamis oleh
sistem Android pada 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 cerah sedang yang menggunakan warnasystem_accent3_0
yang serupa 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 dua warna nuansa untuk memberikan lebih banyak ekspresi kepada pengguna.- 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, ini hanya memerlukan satu kunci pada JSON-nya yang mengirimkan
warna sumber untuk membuat 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 tentang cara 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 tone 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
.