React-native-gesture-handler: Multi-Touch-Handler in Android

Erstellt am 26. Okt. 2017  ·  4Kommentare  ·  Quelle: software-mansion/react-native-gesture-handler

Mit Multi-Touch-Ansichten meine ich etwas wie:

<View
    onTouchStart={() => { console.log('pressing left button'); }}
    onTouchEnd={() => { console.log('releasing left button'); }}
>
    {...}
</View>
<View
    onTouchStart={() => { console.log('pressing right button'); }}
    onTouchEnd={() => { console.log('releasing right button'); }}
>
    {...}
</View>

Die Idee ist, dass der Benutzer sowohl die linke als auch die rechte Taste gedrückt halten muss, damit etwas ausgelöst wird (das Bit, das darauf wartet, dass beide gedrückt werden, befindet sich nicht im obigen Beispiel, aber ich möchte klarstellen, dass die beiden Touchables separate Elemente sind ).

Dies funktioniert gut auf iOS, aber nicht auf Android: bezogen auf https://github.com/facebook/react-native/issues/10068.

Ich hatte also gehofft, dass ich diese Bibliothek verwenden könnte, um dieses Problem zu umgehen. Scheint jedoch nicht zu funktionieren - Ersetzen Sie das obige durch

<BaseButton
  onActiveStateChange={(isActive) => {
    if (isActive) {
      console.log('pressing left button');
    } else {
      console.log('releasing left button');
    }
  }}
>
  {...}
</BaseButton>
<BaseButton
  onActiveStateChange={(isActive) => {
    if (isActive) {
      console.log('pressing right button');
    } else {
      console.log('releasing right button');
    }
  }}
>
  {...}
</BaseButton>

Dies führt jedoch zum gleichen Problem wie bei der Verwendung von View : Sobald eine Taste gedrückt gehalten wird, wird durch Drücken der anderen der Handler der ursprünglichen Taste (auf Android) ausgelöst.

Gibt es eine Möglichkeit, simultaneousHandlers hier zu verwenden?

Feature request

Hilfreichster Kommentar

Hey @yossarin @rgangopadhya

Ich möchte Sie nur wissen lassen, dass wir PR zusammengeführt haben, die dies unterstützt: https://github.com/kmagiera/react-native-gesture-handler/commit/4036fba2fbc7e05d1fea340676a2975594936e8c

Die Demo ist hier: https://twitter.com/kzzzf/status/1015907930649055233

Nach langer Zeit freue ich mich, dieses Thema endlich schließen zu können. Wenn Sie Fragen haben oder dies weiter diskutieren möchten, können Sie es erneut öffnen oder eine neue Ausgabe erstellen.

Alle 4 Kommentare

Hallo,

Ich bin neugierig, was das Hindernis bei der Implementierung von Multi-Touch-Handlern in Android ist?
(Natürlich brauche ich diese Funktion)

Ich frage, weil ich bei diesem Problem helfen möchte, haben Sie vielleicht ein paar Hinweise für mich? :) @kmagera

Hey @yossarin @rgangopadhya

Ich möchte Sie nur wissen lassen, dass wir PR zusammengeführt haben, die dies unterstützt: https://github.com/kmagiera/react-native-gesture-handler/commit/4036fba2fbc7e05d1fea340676a2975594936e8c

Die Demo ist hier: https://twitter.com/kzzzf/status/1015907930649055233

Nach langer Zeit freue ich mich, dieses Thema endlich schließen zu können. Wenn Sie Fragen haben oder dies weiter diskutieren möchten, können Sie es erneut öffnen oder eine neue Ausgabe erstellen.

Ich habe dieses Problem immer noch auf Android, aber keine Probleme auf iOS. Ich bin auf der neuesten Version. Irgendwelche Vorschläge?

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen