سؤال

لديّ UiviewController ، في الأعلى أضع UiimageView ، ثم UisCrollView.

يمكنني معالجة اللمسات على UisCrollView على ما يرام ، ومع ذلك أريد معالجة بعض اللمسات على UiviewController.

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

على uiscrollview أسمي هذا:

- (void) touchesBegan: (NSSet *) touches withEvent: (UIEvent *) event
{
// some custom code to process a specific touch.

// all other touches
    [super touchesBegan: touches withEvent: event];
}

هل هناك طريقة لتمرير اللمسات من UisCrollView إلى UiviewController السفلي ، أو هل يجب علي نقل إشارات إلى UiviewController في UisCrollView؟

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

المحلول

تم حلها!

مطلوب للإضافة:

[self.nextResponder touchesEnded: touches withEvent:event]; 

إلى الأعلى الأكثر تحكم.

شكرا لنفسي!

نصائح أخرى

وصف Touchesbegan في وثائق Apple يقول:

لإعادة توجيه الرسالة إلى المستجيب التالي ، أرسل الرسالة إلى Super (تطبيق الفئة الفائقة) ؛ لا ترسل الرسالة مباشرة إلى المستجيب التالي. فمثلا،

[super touchesBegan:touches withEvent:event];

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

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