Domanda

Attualmente sto usando l'evento

@Override
public boolean onTouchEvent(MotionEvent ev)
{

Per fornire un feedback da parte degli utenti per il gioco che sto scrivendo. Questo evento fuori alcuni eventi di controllo del gioco che richiedono un po 'di tempo per completare (perché non c'è animazione coinvolti). Il problema che sto avendo è durante l'animazione se continuo toccando lo schermo (AKA sparare questo evento), mi metterò un errore di timeout:

10-02 21: 58: 30,776: ERROR / ActivityManager (67): Causa: keyDispatchingTimedOut

In sostanza, mentre l'animazione è in esecuzione, non ho bisogno di questo evento, anche se sarebbe bello fare la coda di esso.

Che cosa posso fare per evitare il timeout e sia in coda l'evento, o temporaneamente disattivarlo?

Grazie.

È stato utile?

Soluzione

Sei per caso bloccare il thread UI? Non ci dovrebbero essere assolutamente alcuna ragione di fare quello che stai chiedendo (e non è nemmeno possibile:)

Altri suggerimenti

Oltre a ciò Romain detto.
Si potrebbe desiderare di sonno () sul tuo onTouchEvent.

Un modo semplice da implementare che è il layout add transaperent su di esso (aggiungerlo nel vostro riempimento xml altezza genitore e larghezza).

in animazione iniziare transaparentlayout.setClickabe (true); in fine dell'animazione transaparentlayout.setClickabe (false);

molto semplice.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top