سؤال

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

في القصة المصورة، قمت بتعيين عرض الصفحة الرئيسية كأداة دخول مخصصة، ولكن بهذه الطريقة يتم عرض هذا العرض دائما حتى يتم إكمال الطلب غير المتزامن.هل هناك طريقة لجعل appdelegate انتظر الاستجابة؟

هل كانت مفيدة؟

المحلول

أعتقد أنه لا يوجد حل جيد للسماح لتفوض التطبيق ينتظر الاستجابة لأنه إذا كان اتصال الشبكة سيكون ضعيفا، فسيكون وقت تحميل التطبيق سيكون طويلا للغاية ولا يمكن أن يقتل نظام التشغيل التطبيق أو المستخدم لإيقاف تشغيله.

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

نصائح أخرى

حلا أفضل هو استخدام شاشات البداية.هذا هو عندما يتم تحميل تطبيقك في AppDelegate، وإنشاء ودفع وحدة تحكم عرض البداية.والتي من شأنها أن تحتوي فقط على شاشة UiimageView واحدة تغطي شاشة كاملة تظهر صورة دفقة التطبيق الخاصة بك.عند إكمال المكالمات غير المتزامن، البوب الذي تحكم عرض البداية وادفع وحدة تحكم العرض المطلوبة.

تستخدم العديد من التطبيقات بهذه الطريقة لتنزيل البيانات اللازمة غير المتزامنة قبل إظهار التطبيق.بحيث لا يرى المستخدم شاشات فارغة أو بيانات القمامة.

إذا فشل شيء ما مثل فشل اتصال الإنترنت أو خطأ استجابة الخادم، وما إلى ذلك، فقم بإظهار الخطأ في المستخدم وإجراء التعامل مع الأخطاء وفقا لمنطق التطبيق الخاص بك.

يمكنك الانتقال بشكل برمجي إلى وحدة تحكم الرؤية الجذر كما

giveacodicetagpre.

يمكن وضع هذا الرمز في حالة النتيجة.

أو في طريقك، أعتقد أنك تقوم بإنشاء مجموعة من النماء للتنقل إلى الجذر.يمكنك القيام برمجي باستخدام

giveacodicetagpre.

إذا كنت تستخدم Afnetworking، فما عليك سوى إضافة طريقة في كتلة النجاح وتمرير الاستجابة إلى هذه الطريقة في معلمة من القاموس.تحقق من ردكم في الطريقة واختر وحدة التحكم التي تريد جعل وحدة تحكم الرؤية الجذر من هذه الطريقة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top