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