Я пытаюсь воссоздать элемент, который появляется на экране и который можно развернуть, закрыть или изменить размер с помощью жеста прокрутки.
Я не знаю настоящего имени этого элемента, но он можетнапример, можно найти в Apple Maps, Google Maps или Apple Music.
Примеры частичных модалов:
Я пыталсясоздайте модальный экран с прозрачным фоном и прозрачным элементом, размер которого я изменяю, чтобы расширить элемент содержимого, но меня это совсем не устраивает, и я уверен, что есть лучший способ сделать это.
export class PartialModal extends Component {
this.state = {
isFullScreen: false
}
render () {
return (
<React.Fragment>
<TouchableWithoutFeedback onPress={() => this.props.dismiss()}>
<Animatable.View transition='height' style={{ height: this.state.isFullScreen ? statusBarHeight : Metrics.screenHeight * 0.6 }} />
</TouchableWithoutFeedback>
<GestureRecognizer
onSwipeUp={() => this.setState({ isFullScreen: true })}
onSwipeDown={() => this.state.isFullScreen ? this.setState({ isFullScreen: false }) : this.props.dismiss()}>
...
</GestureRecognizer>
</React.Fragment>
)
}
В этом примере я не могу развернуть «модал», перетаскивая его, он просто распознает жест смахивания.