سؤال

توضح

"إرشادات واجهة المستخدم للأجهزة المحمولة" من Apple عن Popovers:

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

الحل الوحيد الذي يمكنني التفكير فيه الآن هو تتبع موضع اللمس عند استبعاد العنصر المنبثق والتحقق مما إذا كان هذا هو موضع زر آخر. هل هناك طريقة أسهل للقيام بذلك؟

ملاحظة: لقد بحثت في stackoverflow و googled لفترة طويلة قبل النشر. عذرًا ، إذا تم طرح هذا السؤال هنا من قبل.

تحديث

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

التحديث الثاني

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

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

المحلول

إذا كنت تستخدم عناصر زر شريط في شريط أدوات ، فإن النافذة المنبثقة المفتوحة لا تُغلق تلقائيًا عند النقر على عنصر زر شريط آخر.في هذه المواقف ، يجب عليك إغلاق النافذة المنبثقة المرئية وفتح الأخرى في خطوة واحدة.

نصائح أخرى

Genacodicetagpre

نأمل أن يساعدك

لنفترض أن لديك 3 أزرار ويفتح كل منها نافذة منبثقة.يمكنك استخدام متغير حالة يتتبع ما إذا كانت النافذة المنبثقة مفتوحة حاليًا ، وداخل كل طريقة "فتح منبثق" ، أغلق الطريقة الحالية (إذا كانت مفتوحة) قبل فتح النافذة المنبثقة الجديدة.

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