2016-06-03 37 views
6

TouchableOpacity rende le cose tangibile, o come Reagire Native dice:Assicurarsi TouchableOpacity non evidenziare elemento quando si inizia a scorrere [Reagire Native]

Un wrapper per fare viste rispondono correttamente ai tocchi.

ma il suo utilizzo all'interno di un ScrollView o ListView risultati per mettere in evidenza quando abbiamo (o almeno io) non vogliamo questo.

Questi sono tre passaggi necessari per lo scorrimento verso il basso una ListView pieno di elementi:

  • tocco un elemento
  • Sposta dito verso l'alto
  • dito uscita

Toccando l'elemento risultati immediatamente un'animazione in evidenza. Ma in questo caso, vogliamo solo scorrere. Non vogliamo fare nulla con quell'elemento, che si tratti di evidenziare o aprire una vista di dettaglio, ecc.

Questo non accade sempre ma la maggior parte delle volte sul mio dispositivo Android.

Qual è un modo corretto di gestirlo?

+0

Per motivi di interesse, qual è il caso d'uso per avvolgere una vista a scorrimento in un punto saliente tangibile? –

+0

Questo non è il caso. Stiamo avvolgendo un elemento 'TouchableOpacity' ** dentro ** a' ScrollView'. –

risposta

4

Un gesto di scorrimento dovrebbe annullare il risponditore touch TouchableOpacity, ma se si ritiene che l'evidenziazione TouchableOpacity venga attivata in anticipo, è possibile provare a modificare la proprietà delayPressIn.

+0

Grazie. Non ho considerato gli oggetti di scena 'TouchableWithoutFeedback'. Ora ho impostato 'delayPressIn' su un numero molto alto perché non voglio che l'animazione appaia quando si tiene premuto un pulsante. Tuttavia non è del tutto giusto. Penso che avrò bisogno di un'animazione di evidenziazione personalizzata per tapping, holding e longPressing a lungo termine. –

+0

Grazie a 'delayPressIn' ha funzionato bene, ho impostato il mio su' 50' che sembra appropriato per il mio gesto di scorrimento. –