fix: SlideToConfirm use useNativeDriver:false so setValue follows finger in real-time

This commit is contained in:
Nemo
2026-03-24 13:16:52 +08:00
parent a4b00bad97
commit c0802e8635

View File

@@ -38,12 +38,12 @@ export function SlideToConfirm({ label = 'Slide to confirm', color = '#059669',
const onTouchEnd = () => {
if (disabled || done) return;
if (maxX > 0 && currentX.current / maxX >= THRESHOLD) {
Animated.timing(translateX, { toValue: maxX, duration: 100, useNativeDriver: true }).start(() => {
Animated.timing(translateX, { toValue: maxX, duration: 100, useNativeDriver: false }).start(() => {
setDone(true);
onConfirm();
});
} else {
Animated.spring(translateX, { toValue: 0, useNativeDriver: true, speed: 25, bounciness: 4 }).start();
Animated.spring(translateX, { toValue: 0, useNativeDriver: false, speed: 25, bounciness: 4 }).start();
currentX.current = 0;
}
};