Wie würde ich die Koordinaten meiner Touch-Event bekommen. Also klopfe ich irgendwo innerhalb des Displays und ich kann die X, Y Positionierung von wo es passiert ist abrufen.React native Holen Sie sich die Koordinaten meiner Touch-Veranstaltung
Antwort
Sie müssen Ihr Ansichtsobjekt mit TouchableOpacity oder einer der anderen Berührbaren Komponenten umschließen. Mit TouchableOpacity haben Sie die onPress-Prop, die ein Presseereignis bestanden hat. Von diesem Pressetermin haben Sie Zugriff auf die x, y-Koordinaten der Presse.
Pseudo-Code würde wie folgt aussehen:
render() {
....
<TouchableOpacity onPress={(evt) => this.handlePress(evt) }
.... >
<View></View>
</TouchableOpacity>
}
handlePress(evt){
console.log(`x coord = ${evt.nativeEvent.locationX}`);
}
Wenn Sie mehr Flexibilität als wollen, was durch einen Knopf wie TouchableOpacity angeboten wird, dann werden Sie brauchen, um (zB wenn Sie Geste bewegen Ereignisse wollen.) Verwenden Sie die gesture responder system. Dadurch können Komponenten Touch-Ereignisse abonnieren.
Ich habe Beispielimplementierungen für alle Gestenantwort-Ereignisbehandlungsroutinen hinzugefügt, aber die meisten davon in meiner Ansicht auskommentiert, um nur die grundlegende Funktionalität bereitzustellen: das Abonnieren aller Touch- und Move-Ereignisse. Ich demonstriere die Pfeilsyntax für die booleschen Funktionen und verwende die altmodische bind()
Syntax zum Aufruf meiner benutzerdefinierten onTouchEvent(name, ev)
Funktion.
import React, {Component} from 'react';
import {StyleSheet, Text, View} from 'react-native';
export class Battlefield extends Component {
constructor(props) {
super(props);
}
// The event 'ev' is of type 'GestureResponderEvent'. Documentation for ev.nativeEvent:
// https://facebook.github.io/react-native/docs/gesture-responder-system.html
onTouchEvent(name, ev) {
console.log(
`[${name}] ` +
`root_x: ${ev.nativeEvent.pageX}, root_y: ${ev.nativeEvent.pageY} ` +
`target_x: ${ev.nativeEvent.locationX}, target_y: ${ev.nativeEvent.locationY} ` +
`target: ${ev.nativeEvent.target}`
);
}
render() {
return (
<View
style={styles.container}
onStartShouldSetResponder={(ev) => true}
// onMoveShouldSetResponder={(ev) => false}
onResponderGrant={this.onTouchEvent.bind(this, "onResponderGrant")}
// onResponderReject={this.onTouchEvent.bind(this, "onResponderReject")}
onResponderMove={this.onTouchEvent.bind(this, "onResponderMove")}
// onResponderRelease={this.onTouchEvent.bind(this, "onResponderRelease")}
// onResponderTerminationRequest={(ev) => true}
// onResponderTerminate={this.onTouchEvent.bind(this, "onResponderTerminate")}
>
<Text>Click me</Text>
</View>
);
}
}
const styles = StyleSheet.create({
container: {
position: 'relative',
height: "100%",
width: "100%",
backgroundColor: 'orange'
}
});
Wenn dies noch nicht genug Funktionalität für Sie (z. B., wenn Sie Multi-Touch-Info benötigen), beziehen sich auf PanResponder.
- 1. Holen Sie sich die Zeitzone mit React Native
- 2. Holen Sie sich die Koordinaten von einer HashMap
- 3. Holen Sie sich die Koordinaten eines Touch-Ereignisses auf Android
- 4. Swift - Holen Sie sich Mausklick-Koordinaten in einem UIElement
- 5. reagieren-native holen und die Standardauthentifizierung
- 6. Android - Holen Sie sich die Bildquelle
- 7. Holen Sie sich die BlackBerry-Gerätenummer
- 8. React-Native: Dismiss/Exit React-Native Ansicht zurück zu Native
- 9. Neues React Native Projekt mit alter Version von react native
- 10. Holen Sie sich die Kontrolle oberen rechten Ecke
- 11. Holen Sie sich die Koordinaten für mehrere Punkte automatisch in Leafletjs
- 12. Holen Sie sich Fotoreferenz
- 13. Bildschirmbreite in React Native
- 14. React-native ListView-Tasten
- 15. Holen Sie sich die letzte Checkbox
- 16. Holen Sie sich die Array-Elemente
- 17. Holen Sie sich die zuletzt gedrückte Tastaturtaste
- 18. Holen Sie sich die Daten mit Schlüsselwerten
- 19. Holen Sie sich die Datenbankversion in Meteor
- 20. Holen Sie sich die Zusammenstellung schnell wieder
- 21. Sitecore/GlassMapper Holen Sie sich die Seite
- 22. Holen Sie sich die ec2-Konfigurationsinformationen
- 23. Holen Sie sich die IDs mehrerer Dateien
- 24. Holen Sie sich die Daten in Zeilen
- 25. Holen Sie sich die Konsolenprotokoll von chrome
- 26. Holen Sie sich die Subdomain als Parameter
- 27. Swift - Holen Sie sich die Länderliste
- 28. Woocommerce: Holen Sie sich die aktuelle Produktkategorie
- 29. React Native AsyncStorage Speicherort und verwenden Sie
- 30. Holen Sie sich die Koordinaten der SVG-Gruppe auf ziehen mit snap.svg
Aber als ich war drücken Sie die Maus Ereignis das Bild blinkt Sie können dies vorschlagen. – Lavaraju
Hallo Danke, es ist nützlich für mich .. Aber ich möchte diesen Typ, können Sie auf diesen Link klicken .... http://stackoverflow.com/questions/41743667/react-nativehow-can-i-get- das-Punkt-oder-Bild-wenn-ich-klicke-auf-die-bestimmte-pos – Lavaraju