A black and white flat lay of various modern tech gadgets including a laptop, drone, and gaming device.

تصميم واجهات للتطبيقات على الشاشات القابلة للطي والشاشات المزدوجة: أمثلة عملية ونصائح للمصممين والمطورين

١‏/١٢‏/٢٠٢٥

مقدمة: لماذا تحتاج واجهتك لأن تكون "fold‑aware"؟

الهواتف القابلة للطي والأجهزة ذات الشاشتين تفتح مساحات شاشة جديدة وتغير توقعات المستخدمين: من تجربة قراءة بصفحتين إلى واجهات إنتاجية تستفيد من مساحات أكبر أو شاشتين مستقلتين. التصميم المتكيّف لا يقتصر على مِقاسات الشاشة فقط، بل يتعامل مع طيّ الشاشة، المفصل (hinge)، أوضاع الكتاب/الطاولة، وسيناريوهات تعدد النوافذ.

للمطورين على Android، توفّر مكتبة Jetpack WindowManager واجهة موحّدة للحصول على معلومات الطيّ والمميزات المرتبطة بها مثل FoldingFeature وWindowInfoTracker — وهذا يمكّن التطبيقات من تمييز ما إذا كانت الشاشة مفصولة أو مغطاة وتطبيق تخطيطات مناسبة بديناميكية.

أنماط التصميم الأساسية ووقت استخدامها

فيما يلي أنماط تصميم مجربة تناسب الشاشات القابلة للطي والدو‑شاشة، مع حالات استخدام مبسطة لكل نمط:

  • Single‑pane (قيمة واحدة): على الشاشات المطوية عند الطيّ تُستخدم واجهة عمودية بسيطة تشبه الهاتف العادي — مناسبة للشاشات المطوية المغلقة أو الطيّة.
  • List‑Detail / Two‑pane (قائمتان/تفاصيل): عرض قائمتين (قائمة على اليسار وتفاصيل على اليمين) على شاشة واسعة أو عند فتح الجهاز. مثالي لتطبيقات البريد، الملاحظات والمتاجر الإلكترونية. هذا النمط متوفر أيضًا كتحكم TwoPaneView في أنظمة Windows/Surface.
  • Companion Pane (لوحة مرافقة): محتوى واحد أساسي على شاشة والمحتوى التفاعلي أو الإعدادات على الشاشة الثانية — مناسب لأدوات التخصيص والعروض الحية.
  • Two‑Page / Book (صفحتان): تجربة تصفح تشبه كتابًا أو كتالوجًا توزّع المحتوى بين شاشتين عند الطيّ بشكل كتابي.
  • Extended Canvas (قماش ممتد): مساحة عمل واسعة — خرائط، محرّكات رسم أو عرض وسائط تمتد عبر الشاشتين مع مراعاة منطقة المفصل.

عند اختيار النمط، فكّر في هدف المستخدم في كل وضع: هل يريد إنجازًا سريعا (وضع مطوي) أم إنتاجية/عرضًا غنيًا (وضع مفتوح)؟ حاول أن تكون التبديلات بين الأوضاع مكمّلة بدلًا من تكرار المحتوى بلا فائدة.

نصائح تنفيذية عملية، اختبارات وقائمة تحقق قبل الإطلاق

نصائح تقنية وتصميمية

  • احترس من منطقة المفصل (hinge / fold seam): لا تضع عناصر تحكم أساسية أو نصوصًا مهمة عبر الموضع الذي قد يكون "مغطًى" أو يصعب الوصول إليه؛ استخدم WindowLayoutInfo وFoldingFeature للتعرّف على occlusion وisSeparating وorientation.
  • حافظ على استمرارية الحالة (App continuity): عند الطي/الفتح يجب استعادة نص الحقول، موضع التمرير، وحالة مشغل الوسائط حتى يشعر المستخدم أن التطبيق يستمر بسلاسة.
  • اعتمد تصميمًا متدرّجًا (responsive + adaptive): ابدأ بنظام شبكات مرن (grid) وفكّر في تخطيطات منفصلة لكل فئة مساحة—لا تعتمد فقط على قياسات العرض التقليدية.
  • دعّم السحب والإفلات بين الشاشتين: تجربة نقل العناصر بين لوحين تزيد من قيمة الواجهات الثنائية — تأكد من إدارة حالات الإلغاء والقيود بوضوح.
  • لوحات المفاتيح والإدخال: اختبر سلوك لوحة المفاتيح على أوضاع الطيّ المختلفة لأن ظهورها قد يغيّر ارتفاع المحتوى المتاح.

أدوات الاختبار

استخدم محاكيات ومطوّري المتصفحات: Microsoft Edge DevTools يوفّر محاكاة للشاشات القابلة للطي والدو‑شاشة مع رسم منطقة الفاصل لمراجعة كيفية عرض موقعك/تطبيقك عبر السيم. كما اختبر على محاكي Surface Duo وemulator Android مع دعم Jetpack WindowManager لقياس ردود الفعل الحقيقية.

قائمة تحقق سريعة قبل الإصدار

  1. تجنّب وضع محتوى أساسي على منطقة الفاصل أو اختبر ظهوره مع occlusionType.
  2. استعادة الحالة بعد الطي/الفتح (نصوص، مواضع تمرير، مشغلات وسائط).
  3. تصميم وتطبيق أنماط Two‑pane أو Companion حيث تضيف قيمة للتجربة.
  4. اختبار تعدد النوافذ والـ split‑screen وسلوك الإشعارات.
  5. اختبار الوصول (قابلية القراءة، حجم الأزرار، التنقّل عبر لوحة المفاتيح ومساعد الشاشة).

الخلاصة: واجهات الفولدابل والدو‑شاشة تتطلّب مزيجًا من التصميم المتكيّف، الوعي بالحالة التقنية للجهاز، واختبارات عملية عبر المحاكيات والأجهزة الحقيقية. البدء بسياسة تصميمية واضحة (أي الأنماط التي ستدعمها ومتى) وتكامل WindowManager/TwoPaneView في المرحلة المبكّرة يسهل تحويل التصميم إلى تجربة مستخدم متماسكة وموثوقة.