SDK Version: 46.0.0
Platform( Androdi / iOS )
i use Gesture state manager and run state.activate() but doesn’t working too
import React from "react";
import { StyleSheet } from "react-native";
import {
Gesture,
GestureDetector,
GestureHandlerRootView,
} from "react-native-gesture-handler";
import Animated, {
useAnimatedStyle,
useSharedValue,
} from "react-native-reanimated";
const Screen = () => {
const transX = useSharedValue(0);
const offsetTransX = useSharedValue(0);
const transY = useSharedValue(0);
const offsetTransY = useSharedValue(0);
const panGesture = Gesture.Pan()
.manualActivation(true)
.onTouchesMove((_, state) => {
state.activate();
})
.onUpdate((e) => {
console.log("updated");
transX.value = e.translationX + offsetTransX.value;
transY.value = e.translationY + offsetTransY.value;
})
.onEnd((e) => {
offsetTransX.value = transX.value;
offsetTransY.value = transY.value;
});
const boxStyle = useAnimatedStyle(() => {
return {
transform: [{ translateX: transX.value }, { translateY: transY.value }],
};
});
return (
<GestureHandlerRootView style={styles.container}>
<GestureDetector gesture={panGesture}>
<Animated.View style={[styles.box, boxStyle]} />
</GestureDetector>
</GestureHandlerRootView>
);
};
const styles = StyleSheet.create({
container: {
flex: 1,
},
box: {
width: 100,
height: 100,
backgroundColor: "blue",
},
});
export default Screen;