react-native – 使React Native Modal从上到下显示
发布时间:2020-12-15 20:16:57 所属栏目:百科 来源:网络整理
导读:我注意到 Modal组件的animationType属性只允许它从下到上滑动.我怎么能改变动画并让模态从上到下出现? 谢谢你的时间. 解决方法 看起来该组件不允许这种类型的配置. 您可以做的一件事是使用动画库来创建自己的模态.您可以将translateY属性设置为设备高度的负
我注意到
Modal组件的animationType属性只允许它从下到上滑动.我怎么能改变动画并让模态从上到下出现?
谢谢你的时间. 解决方法
看起来该组件不允许这种类型的配置.
您可以做的一件事是使用动画库来创建自己的模态.您可以将translateY属性设置为设备高度的负值,然后将translateY值设置为0: openModal() { Animated.timing(this.state.modalY,{ duration: 300,toValue: 0 }).start(); },closeModal() { Animated.timing(this.state.modalY,toValue: -deviceHeight }).start(); }, 完整实现如下: 'use strict'; var React = require('react-native'); var { AppRegistry,StyleSheet,Text,View,TouchableHighlight,Animated,Dimensions } = React; let deviceHeight = Dimensions.get('window').height var deviceWidth = Dimensions.get('window').width var SampleApp = React.createClass({ openModal() { Animated.timing(this.state.modalY,getInitialState(){ return { modalY: new Animated.Value(-deviceHeight) } },render() { var Modal = <Animated.View style={[ styles.modal,{ transform: [ {translateY: this.state.modalY}] }]}> <TouchableHighlight onPress={ this.closeModal } underlayColor="green" style={ styles.button }> <Text style={ styles.buttonText }>Close Modal</Text> </TouchableHighlight> </Animated.View> return ( <View style={styles.container}> <TouchableHighlight onPress={ this.openModal } underlayColor="green" style={ styles.button }> <Text style={ styles.buttonText }>Show Modal</Text> </TouchableHighlight> { Modal } </View> ); } }); var styles = StyleSheet.create({ container: { flex: 1,justifyContent: 'center' },button: { backgroundColor: 'green',alignItems: 'center',height: 60,justifyContent: 'center',},buttonText: { color: 'white' },modal: { height: deviceHeight,width: deviceWidth,position: 'absolute',top:0,left:0,backgroundColor: '#ededed',} }); AppRegistry.registerComponent('SampleApp',() => SampleApp); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 具有正则表达式的CSS2属性选择器
- cocoa 键值观察依赖键(KVO)--笔录
- vue组件中使用props传递数据的实例详解
- Ajax返回数据却一直进入error(已经解决)
- 如何使用local.xml在Magento 1.5中设置默认布局?
- swift – 与Alamofire的NSURLSession并发请求
- bbossgroups 框架最小依赖工程资源下载(mvc,aop,persist
- checking for XML::Parser... configure: error: XML::Pars
- ADS中RO Base和RW Base的作用
- [sqlite] the speed of embedded database engines, sqlite