يبدأ المستخدم سحب الرجوع ثم يتراجع ويترك الشاشة مفتوحة. إذا حذف التطبيق مسودة النموذج أو نفذ التنقل بمجرد بداية السحب، فقد يعامل معاينة الرجوع كأنها قرار نهائي. اختبار Predictive Back يحتاج مسار الإلغاء مثلما يحتاج مسار الإكمال.
المعاينة ليست رجوعًا مكتملًا
تشرح وثائق Android للرجوع التنبؤي أن الإيماءة تتيح معاينة الوجهة. وفي مثال Compose باستخدام PredictiveBackHandler، يُتابع تدفق تقدم الإيماءة، ثم يُعالج الرجوع النهائي بعد اكتماله؛ وعند CancellationException تُعاد حالة الواجهة. يعتمد التنفيذ المناسب على مكتبات التنقل وإصدار التطبيق الفعلي.
لا تضف معالجة مخصصة لمجرد ظهور الحركة الجديدة. ابدأ بمراجعة ما توفره مكتبة التنقل المستخدمة، وحدد أين توجد حاجة حقيقية لتدخل التطبيق. اعتراض جميع حالات الرجوع بالطريقة القديمة قد يجعل السلوك أقل اتساقًا مع النظام.
جهز شاشة يمكن تمييز حالتها
في سيناريو افتراضي، املأ نموذج طلب خدمة ببيانات مصطنعة، وانتقل إلى موضع تمرير واضح. ابدأ سحبًا جزئيًا ثم ألغِه. افحص أن الشاشة نفسها بقيت نشطة، وأن القيم والموضع عادا للحالة المقصودة، وأن عدد عمليات التنقل أو الحفظ لم يزد بسبب الإيماءة الملغاة.
| الفعل | ما تراجعه |
|---|---|
| بدء السحب | معاينة متسقة دون أثر نهائي مبكر |
| إلغاء السحب | عودة الواجهة وبقاء المسودة |
| إكمال السحب | تنقل واحد إلى الوجهة المقصودة |
| تكرار الإلغاء ثم الإكمال | لا تتراكم حالة حركة أو أوامر سابقة |
افصل حماية التعديلات عن حركة الشاشة
إذا كان المنتج يطلب تأكيدًا قبل ترك تعديلات غير محفوظة، فاكتب متى يظهر التأكيد وما الذي يحدث عند رفضه. لا تعتبر كل تقدم في الحركة إذنًا بمسح النموذج، ولا تنفذ حفظًا حقيقيًا ثم تفترض أن إلغاء الحركة سيلغيه تلقائيًا.
راجع الشاشات المتداخلة والنوافذ ولوحة المفاتيح والعودة إلى الشاشة الرئيسية بحسب بنية التطبيق. وسجل النظام والجهاز وإصدارات AndroidX أو Compose ذات الصلة، دون تعميم نتيجة محاكي واحد على جميع الهواتف.
سلّم دليلًا على الحالة النهائية
في تطوير تطبيقات الهاتف احتفظ بتسجيل قصير لمساري الإلغاء والإكمال مع بيانات تجريبية. وتراجع تجربة الاستخدام وضوح الوجهة وحماية المسودة. معيار القبول أن يفهم المستخدم نتيجة قراره، وأن يطابق التنقل الفعلي هذا القرار؛ نعومة الحركة وحدها لا تثبت صحة الرحلة.




