Я пытаюсь использовать плагин act-native-image-zoom-viewer для отображения предварительного просмотра изображения, и я хочу достичь простой цели - закрыть модальное окно, когда пользователь нажимает на Android назадкнопка. Однако функция обработчика closeModal
не срабатывает при нажатии.
Я уже пытался заменить closeModal
неанонимной функцией, но я все еще не получил результатов. Как я мог обойти эту проблему?
Спасибо за помощь!
import ImageViewer from 'react-native-image-zoom-viewer'
import { BackHandler, Modal } from 'react-native'
import React, { useEffect, useState } from 'react'
const [isModalVisible, setModalVisible] = useState(false)
const closeModal = () => {
if (isModalVisible) {
setModalVisible(false)
}
}
useEffect(() => {
BackHandler.addEventListener('hardwareBackPress', closeModal)
return () => BackHandler.removeEventListener('hardwareBackPress', closeModal)
}, [])
// Here is how I call the modal in the jsx
<Modal transparent visible={isModalVisible}>
<ImageViewer
enableSwipeDown
imageUrls={[
{
url: picture.url_min,
},
]}
onSwipeDown={closeModal}
renderIndicator={() => null}
saveToLocalByLongPress={false}
/>
</Modal>