سؤال

أنا أستخدم الحدث حاليًا

@Override
public boolean onTouchEvent(MotionEvent ev)
{

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

10-02 21: 58: 30.776: Error/ActivityManager (67): السبب: keyDispatchingTimeOut

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

ما الذي يمكنني فعله لمنع المهلة وإما وضع طابور في الحدث ، أو تعطيله مؤقتًا؟

شكرًا.

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

المحلول

هل أنت بأي فرصة في منع موضوع واجهة المستخدم؟ لا ينبغي أن يكون هناك أي سبب على الإطلاق لفعل ما تطلبه (وهو غير ممكن حتى :)

نصائح أخرى

بجانب ما قاله رومان.
قد ترغب في النوم () على ontouchevent الخاص بك.

طريقة سهلة للتنفيذ هي إضافة تخطيط Transaperent فوقه (أضفه في ارتفاع وعرض الوالدين XML).

في الرسوم المتحركة ، ابدأ transaparentLayout.setClickabe (صحيح) ؛ في نهاية الرسوم المتحركة transaparentLayout.setClickabe (false) ؛

بسيط جدا.

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