ألوان ديناميكية

تم إطلاق تصميم Material You مع إصدار Android 12 وتم توسيعه باستخدام Android 13.

تركّز هذه الصفحة على التعديلات التي تم إجراؤها على منطق Material You لمساعدتك في الدمج مع إتاحة ألوان ديناميكية أكثر ثراءً.

لوحات الألوان الديناميكية

بدءًا من الإصدار 12 من نظام التشغيل Android، تتوفّر لوحات الألوان الديناميكية التالية:

يتألّف كل منها من مجموعة من 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. بالنسبة إلى الإصدار 13 من Android، لا يتطلب سوى مفتاح واحد في ملف 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.

الأسئلة الشائعة

ما الذي تشمله واجهة برمجة التطبيقات الديناميكية للوحة الألوان الديناميكية؟

  • تتوفّر خمس لوحات ألوان:

  • تحتوي كل لوحة ألوان على 13 قيمة لون تنتهي بالمؤشرات 0 و10 و50 و100 و200 و300 و400 و500 و600 و700 و800 و900 و1000.

  • واجهة برمجة التطبيقات الناتجة هي عبارة عن تركيبة من اسم لوحة الألوان، وتنتهي بالملف الشخصي. على سبيل المثال: R.color#system_accent1_10

كيف يتم إنشاء لوحة ألوان ديناميكية؟

يجب إنشاء لوحة ألوان ديناميكية من لون مصدر واحد يجب أن يتم استخراجه من الخلفية باستخدام com.android.systemui.monet.ColorScheme#getSeedColors، الذي يقدّم عدة ألوان مصدر صالحة. إذا لم يستوفِ أيّ من الألوان المقدّمة متطلبات لون المصدر، يجب استخدام القيمة 0xFF1B6EF3 مع لون المصدر الوحيد.