עיצוב Material You הושק עם גרסת Android 12 והורחב עם Android 13.
בדף הזה מתמקדים בעדכונים ללוגיקה של Material You כדי לעזור לכם לשלב תמיכה עשירה יותר בצבעים דינמיים.
לוחות צבעים טונליים דינמיים
החל מ-Android 12, יש תמיכה בפלטות הבאות של צבעים דינמיים:
כל אחת מהן מורכבת מקבוצה של 13 צבעים עם ערכי בהירות שונים מוגדרים, כפי שמתואר בכתובת R.color, אבל עם ערכי גוון ורוויה לא מוגדרים שיכולים להיווצר באופן דינמי על ידי מערכת Android בזמן הריצה.
סגנונות עיצוב לצבע דינמי
החל מ-Android 13, יש תמיכה בשישה סגנונות עיצוב שונים עם וריאציות של אלגוריתם הצבע הדינמי, ששומרות על הצרכים של המפתחים ועל ציפיות הניגודיות. הצבעים האלה מפורטים כדי ליצור את הצבע הדינמי 65 שמשמש באפליקציות:
-
TONAL_SPOTהיא פלטה עם רמת חיות בינונית שמשתמשת בצבעsystem_accent3_0שדומה לצבעsystem_accent1_0(הועבר מגרסת Android 12 ועבר התאמה קלה). -
VIBRANTהיא פלטת צבעים עם רמת חיות גבוהה, שבה יש שילוב הרמוני של שינויים עדינים בין הצבעים. -
EXPRESSIVEהוא לוח צבעים עם רמת בהירות גבוהה שמשלב צבעים לא צפויים וייחודיים. -
SPRITZהוא לוח צבעים עם רמת רוויה נמוכה שיוצר מעבר רך בין הצבעים. RAINBOWמשתמשת בהדגשות כרומטיות ובמשטחים ניטרליים כדי ליצור חוויית צבע עדינה יותר למשתמשים.- לא מומלץ להשתמש באפשרות הזו עם שילובי צבעים שמבוססים על הטפט, אלא עם ערכות צבעים סטטיות.
-
FRUIT_SALADמספק צבעים דו-גווניים כדי לאפשר למשתמשים להביע את עצמם בצורה טובה יותר.- לא מומלץ להשתמש באפשרות הזו עם שילובי צבעים שמבוססים על הטפט, אלא עם ערכות צבעים סטטיות.
העיצוב של המערכת מבוסס על אותה הגדרה כמו ב-Android 12,
שהיא Settings.Secure.THEME_CUSTOMIZATION_OVERLAY_PACKAGES. ב-Android
13, נדרש רק מפתח אחד ב-JSON ששולח את
צבע המקור כדי ליצור את 65 פלטות הצבעים:
{
"android.theme.customization.system_palette":"746BC1"
}
סגנון ברירת המחדל של ערכת הנושא הוא TONAL_SPOT, אבל אפשר לציין אחד מסגנונות ערכת הנושא האחרים באמצעות מפתח נוסף ב-JSON שלמעלה:
{
"android.theme.customization.system_palette":"746BC1"
"android.theme.customization.theme_style":"EXPRESSIVE"
}
שילוב של צבע דינמי
הנחיות לשילוב צבעים דינמיים מפורטות במאמר שילוב עיצוב Material You.
שאלות נפוצות
מה כולל ה-API של לוח הצבעים הדינמי?
יש חמש פלטות של גוונים:
לכל פלטת גוונים יש 13 ערכי צבע שמסתיימים באינדקסים 0, 10, 50, 100, 200, 300, 400, 500, 600, 700, 800, 900 ו-1, 000.
ה-API שמתקבל הוא שילוב של שם פלטת הגוונים, שמסתיים באינדקס. לדוגמה:
R.color#system_accent1_10
איך נוצרת פלטת צבעים דינמית?
צריך ליצור לוח צבעים דינמי מגוון מצבע מקור יחיד שצריך להיות נגזר מהטפט באמצעות com.android.systemui.monet.ColorScheme#getSeedColors, שמספק כמה צבעי מקור תקינים. אם אף אחד מהצבעים שצוינו לא עומד בדרישה של צבע המקור, צריך להשתמש בערך 0xFF1B6EF3 עבור צבע המקור היחיד.