نظام Android الأساسي مسؤول عن رسم واجهة مستخدم النظام، مثل شريط الحالة وشريط التنقّل. يتم عرض واجهة مستخدم النظام هذه بغض النظر عن التطبيق الذي يستخدمه المستخدم.
توفّر WindowInsets معلومات عن واجهة مستخدم النظام لضمان عرض تطبيقك في المنطقة الصحيحة وعدم حجب واجهة المستخدم الخاصة بك من خلال واجهة مستخدم النظام.
في الإصدار 14 من نظام التشغيل Android (المستوى 34 لواجهة برمجة التطبيقات) والإصدارات الأقدم، لا يتم تلقائيًا عرض واجهة مستخدم تطبيقك أسفل أشرطة النظام والصور المقطوعة للشاشة.
على Android 15 (مستوى واجهة برمجة التطبيقات 35) والإصدارات الأحدث، يتم عرض تطبيقك أسفل أشرطة النظام والصور المقطوعة للشاشة عندما يستهدف الإصدار 35 من حزمة تطوير البرامج (SDK). يؤدي ذلك إلى توفير تجربة مستخدم أكثر سلاسة ويسمح لتطبيقك بالاستفادة الكاملة من مساحة النافذة المتاحة له.
يُطلق على عرض المحتوى خلف واجهة مستخدم النظام اسم العرض على الشاشة بأكملها. في هذه الصفحة، يمكنك التعرّف على الأنواع المختلفة من المساحات الداخلية، وكيفية عرض المحتوى على كامل الشاشة، وكيفية استخدام واجهات برمجة التطبيقات الخاصة بالمساحات الداخلية لإضافة تأثيرات حركية إلى واجهة المستخدم وضمان عدم حجب محتوى تطبيقك بواسطة عناصر واجهة المستخدم في النظام.
أساسيات المسافة الداخلية
عندما يعرض التطبيق المحتوى من الحافة إلى الحافة، عليك التأكّد من أنّ المحتوى والتفاعلات المهمة لا يحجبها واجهة مستخدم النظام. على سبيل المثال، إذا تم وضع زر خلف شريط التنقل، فقد لا يتمكن المستخدم من النقر فوقه.
يتم تحديد حجم واجهة مستخدم النظام ومعلومات حول مكان وضعها باستخدام المساحات المتروكة.
لكل جزء من واجهة مستخدم النظام نوع مقابل من الإطار الداخلي يصف حجمه ومكان وضعه. على سبيل المثال، توفّر إضافات شريط الحالة حجم شريط الحالة وموضعه، بينما توفّر إضافات شريط التنقّل حجم شريط التنقّل وموضعه. يتكوّن كل نوع من أنواع الإدراج من أربعة أبعاد بالبكسل: أعلى ويسار ويمين وأسفل. تحدّد هذه الأبعاد مدى امتداد واجهة مستخدم النظام من الجوانب المقابلة لنافذة التطبيق. ولتجنُّب التداخل مع هذا النوع من واجهة مستخدم النظام، يجب أن تكون واجهة مستخدم التطبيق مُدرَجة بهذا المقدار.
تتوفّر أنواع الإطارات المضمّنة التالية في Android من خلال WindowInsets:
تمثّل هذه المَعلمة الأجزاء التي تصف أشرطة الحالة. هذه هي أشرطة واجهة المستخدم العلوية للنظام التي تحتوي على رموز الإشعارات والمؤشرات الأخرى. |
|
تمثّل هذه السمة العناصر المضمّنة في شريط الحالة عندما يكون مرئيًا. إذا كانت أشرطة الحالة مخفية (بسبب الدخول في وضع ملء الشاشة المجسم)، ستكون العناصر المضمّنة في شريط الحالة الرئيسي فارغة، ولكن هذه العناصر المضمّنة لن تكون فارغة. |
|
تمثّل هذه المَعلمة الأجزاء التي تصف أشرطة التنقّل. وهي أشرطة واجهة مستخدم النظام على الجانب الأيمن أو الأيسر أو السفلي من الجهاز، وتصف شريط التطبيقات أو رموز التنقّل. ويمكن أن تتغيّر هذه الأبعاد أثناء التشغيل استنادًا إلى طريقة التنقّل المفضّلة لدى المستخدم والتفاعل مع شريط التطبيقات. |
|
تمثّل هذه السمة الأجزاء المقتطعة من شريط التنقّل عندما يكون ظاهرًا. إذا كانت أشرطة التنقّل مخفية (بسبب الدخول في وضع ملء الشاشة المجسم)، ستكون الأجزاء الداخلية لشريط التنقّل الرئيسي فارغة، ولكن هذه الأجزاء الداخلية لن تكون فارغة. |
|
تمثّل هذه السمة الجزء الداخلي الذي يصف زخرفة نافذة واجهة مستخدم النظام إذا كانت في نافذة ذات شكل حر، مثل شريط العناوين العلوي. |
|
تمثّل هذه السمة الأجزاء الداخلية لشريط الشرح عندما يكون مرئيًا. إذا كانت أشرطة العناوين مخفية، ستكون الأجزاء الداخلية لشريط العناوين الرئيسي فارغة، ولكن هذه الأجزاء الداخلية لن تكون فارغة. |
|
مجموعة من أشرطة النظام، والتي تشمل أشرطة الحالة وأشرطة التنقّل وشريط العناوين |
|
تمثّل هذه السمة المساحات المتروكة لشريط النظام عندما يكون مرئيًا. إذا كانت أشرطة النظام مخفية (بسبب الدخول في وضع ملء الشاشة المجسم)، ستكون الأجزاء الداخلية لشريط النظام الرئيسي فارغة، ولكن هذه الأجزاء الداخلية لن تكون فارغة. |
|
تمثّل هذه السمة المساحة التي تشغلها لوحة المفاتيح الافتراضية في أسفل الشاشة. |
|
تمثّل هذه المَعلمة المساحة التي تشغلها لوحة المفاتيح الافتراضية قبل الحركة الحالية للوحة المفاتيح. |
|
تمثّل هذه المَعلمة المساحة التي ستشغلها لوحة المفاتيح الافتراضية بعد انتهاء الحركة الحالية للوحة المفاتيح. |
|
نوع من العناصر المضمّنة يصف معلومات أكثر تفصيلاً عن واجهة مستخدم التنقّل، ويوفّر مقدار المساحة التي سيتعامل فيها النظام مع "النقرات"، وليس التطبيق. بالنسبة إلى أشرطة التنقّل الشفافة التي تستخدم ميزة "التنقّل بالإيماءات"، يمكن النقر على بعض عناصر التطبيق من خلال واجهة مستخدم التنقّل في النظام. |
|
تمثّل هذه السمة العناصر القابلة للنقر التي تظهر عند عرضها. إذا كانت العناصر القابلة للنقر مخفية (بسبب الدخول في وضع ملء الشاشة الغامر)، ستكون العناصر الرئيسية القابلة للنقر فارغة، ولكن هذه العناصر لن تكون فارغة. |
|
تمثّل هذه الإعدادات مقدار المساحة التي سيعترض فيها النظام الإيماءات للتنقّل. يمكن للتطبيقات تحديد معالجة قدر محدود من هذه الإيماءات يدويًا باستخدام |
|
مجموعة فرعية من إيماءات نظام التشغيل التي سيتعامل معها النظام دائمًا، ولا يمكن إيقافها باستخدام |
|
تمثّل هذه العناصر مقدار المسافة اللازمة لتجنُّب التداخل مع صورة مقطوعة للشاشة (شق أو ثقب). |
|
تمثّل الأجزاء المقتطعة المناطق المنحنية في شاشة العرض الانحداري لطلبات الشبكة. تتضمّن الشاشة المنحنية مناطق منحنية على طول حواف الشاشة حيث تبدأ الشاشة في الالتفاف على طول جوانب الجهاز. |
يتم تلخيص هذه الأنواع من خلال ثلاثة أنواع من الأجزاء "الآمنة" التي تضمن عدم حجب المحتوى:
تحمي أنواع الإطارات "الآمنة" هذه المحتوى بطرق مختلفة، استنادًا إلى إطارات المنصة الأساسية:
- استخدِم
WindowInsets.safeDrawingلحماية المحتوى الذي لا يجب عرضه تحت أي واجهة مستخدم للنظام. هذا هو الاستخدام الأكثر شيوعًا للعناصر الداخلية: لمنع رسم المحتوى الذي تحجبه واجهة مستخدم النظام (إما جزئيًا أو كليًا). - استخدِم
WindowInsets.safeGesturesلحماية المحتوى باستخدام الإيماءات. يؤدي ذلك إلى تجنُّب تعارض إيماءات نظام التشغيل مع إيماءات التطبيق (مثل تلك الخاصة بالبطاقات السفلية أو لوحات العرض الدوّارة أو الألعاب). - استخدِم
WindowInsets.safeContentكمزيج منWindowInsets.safeDrawingوWindowInsets.safeGesturesلضمان عدم تداخل المحتوى المرئي وعدم تداخل الإيماءات.
التطبيقات المقترَحة لك
- ملاحظة: يتم عرض نص الرابط عندما يكون JavaScript غير مفعَّل
- مكوّنات Material وتنسيقاتها
- نقل بيانات
CoordinatorLayoutإلى Compose - اعتبارات أخرى