2016-06-03 2 views
6

TouchableOpacity Dinge anfassbar macht, oder als Reaktion Mutter sagt:Stellen TouchableOpacity nicht Element markieren, wenn zu blättern beginnen [Reagieren Nativ]

Ein Wrapper für die Herstellung von Ansichten auf Berührungen richtig reagieren.

Aber es innerhalb eines ScrollView oder ListView Ergebnisse mit in Hervorhebung, wenn wir (oder zumindest ich), dass nicht wollen.

Dies sind drei Schritte, die beim Scrollen eine ListView mit Elementen gefüllt unten:

  • Tippen Sie auf ein Element
  • bewegen Finger nach oben
  • Freigabe Finger

das Element Berühren sofort ergibt eine Highlight-Animation. Aber in diesem Fall wollen wir nur scrollen. Wir wollen nichts mit diesem Element machen, sei es Hervorhebung oder Öffnen einer Detailansicht usw.

Dies passiert nicht die ganze Zeit, aber die meisten Male auf meinem Android-Gerät.

Was ist ein richtiger Umgang damit?

+0

Interessanterweise, was ist der Anwendungsfall, um eine Scroll-Ansicht in ein berührbares Highlight einzufügen? –

+0

Das ist nicht der Fall. Wir verpacken ein 'TouchableOpacity'-Element ** in ** eine' ScrollView'. –

Antwort

4

Eine Scroll-Geste sollte die TouchableOpacity Touch-Responder abbrechen, aber wenn Sie denken, dass die TouchableOpacity Höhepunkt zu früh ausgelöst wird, können Sie versuchen, die delayPressIn Eigenschaft zu optimieren.

+0

Danke. Ich habe die "TouchableWithoutFeedback" Requisiten nicht berücksichtigt. Jetzt setze ich das 'delayPressIn' auf eine sehr hohe Zahl, weil ich nicht möchte, dass diese Animation erscheint, wenn man eine Taste gedrückt hält. Es fühlt sich jedoch nicht ganz richtig an. Ich denke, dass ich auf lange Sicht eine benutzerdefinierte Hervorhebungsanimation zum Klopfen, Halten und LongPress benötigen werde. –

+0

Danke 'delayPressIn' hat gut funktioniert, ich habe meins auf' 50' gesetzt, was für meine Wischgeste passend erscheint. –

Verwandte Themen