تطوير iPhone - تقييد تفاعل المستخدم مع التطبيق وإظهار مؤشر التقدم

StackOverflow https://stackoverflow.com/questions/446077

  •  22-07-2019
  •  | 
  •  

سؤال

لدي حالة حيث أسحب المعلومات من خادم. يحتوي طلبي على شريط علامة تبويب وأزرار التنقل. أريد أن يعرض التطبيق مؤشر التقدم وتعطيل جميع عناصر التحكم الأخرى حتى لا يتمكن المستخدم من القفز أثناء سحب البيانات من الخادم. كيف يمكنني تحقيق ذلك؟

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

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

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

المحلول

اقترح ستيفان استخدام uialertview مع UiprogressView أو UiActivityIndicatorView. لقد نجح هذا الحل بالنسبة لي ، ولكن كما تمت مناقشته مع بعض الأعضاء الآخرين في مجتمع مطوري iPhone ، لا ينصح بهذا النهج.

يتمثل النهج الموصى به في استخدام طريقة عرض جديدة وتعيين قيمة الشفافية إلى Alpha 7 أو 8 ، وتعيين خلفيةها على الأسود ، وإضافة UiprogressView أو UiActivityIndicatorView في هذا العرض واستخدام هذا العرض الجديد لإظهار التقدم. لا يوجد اختراق في استخدام هذه التقنية. بينما ، في حالة إضافة UiActivityIndicatorView إلى uialertview ، تقوم فعليًا بإجراء عملية غير موثقة (والتي لا ينصح بها).

شكرًا.

نصائح أخرى

فقط إنشاء uialertview بدون أزرار ، سيمنع أي تفاعل مستخدم.

يمكنك إضافة UiprogressView أو UiActivityIndicatorView إلى تنبيهك إذا كنت تريد.

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