뷰어 이벤트 처리하기

useGestureViewerEvent 훅을 사용하여 GestureViewer의 특정 이벤트를 구독할 수 있습니다. 줌이나 회전과 같은 실시간 제스처 변화에 반응할 수 있습니다.

import { GestureViewer, useGestureViewerEvent } from 'react-native-gesture-image-viewer';

function App() {
  // 기본 인스턴스 (ID: 'default')의 줌 변경 이벤트 구독
  useGestureViewerEvent('zoomChange', (data) => {
    console.log(`줌 변경: ${data.previousScale}${data.scale}`);
  });

  // 기본 인스턴스 (ID: 'default')의 회전 변경 이벤트 구독
  useGestureViewerEvent('rotationChange', (data) => {
    console.log(`회전 변경: ${data.previousRotation}° → ${data.rotation}°`);
  });

  // 특정 인스턴스의 이벤트 구독
  useGestureViewerEvent('gallery', 'zoomChange', (data) => {
    console.log(`갤러리 줌: ${data.scale}배`);
  });

  return (
    <GestureViewer
      data={images}
      renderItem={renderImage}
    />
  );
}

이벤트 타입

이벤트설명데이터
zoomChange핀치 제스처 중 줌 스케일이 변경될 때 발생{ scale: number, previousScale: number }
rotationChange회전 제스처 중 회전 각도가 변경될 때 발생{ rotation: number, previousRotation: number }