Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/react-native/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
React native 在react native中,多个屏幕(如堆栈)彼此重叠_React Native_React Native Android_React Native Ios_React Native Navigation_Stack Navigator - Fatal编程技术网

React native 在react native中,多个屏幕(如堆栈)彼此重叠

React native 在react native中,多个屏幕(如堆栈)彼此重叠,react-native,react-native-android,react-native-ios,react-native-navigation,stack-navigator,React Native,React Native Android,React Native Ios,React Native Navigation,Stack Navigator,在react native中,我们可以实现一个UI,其中有多个屏幕堆叠在彼此的顶部,每个屏幕在单击按钮时堆叠在彼此的顶部 比如说,有一个屏幕A。点击一个按钮,屏幕B作为堆栈放置在屏幕A上,而屏幕A仍然部分可见,因为屏幕B没有占据整个屏幕布局。类似地,点击屏幕B中的按钮后,屏幕C添加到堆栈中,屏幕B与背景中的屏幕a一起仍然可见。所有这些都带有左侧的侧面动画(类似于导航抽屉)。通过一个公共按钮,上述所有屏幕都可以从堆栈中弹出,上一个屏幕再次显示侧面动画,这次显示在右侧 我想知道在react nati

在react native中,我们可以实现一个UI,其中有多个屏幕堆叠在彼此的顶部,每个屏幕在单击按钮时堆叠在彼此的顶部

比如说,有一个屏幕A。点击一个按钮,屏幕B作为堆栈放置在屏幕A上,而屏幕A仍然部分可见,因为屏幕B没有占据整个屏幕布局。类似地,点击屏幕B中的按钮后,屏幕C添加到堆栈中,屏幕B与背景中的屏幕a一起仍然可见。所有这些都带有左侧的侧面动画(类似于导航抽屉)。通过一个公共按钮,上述所有屏幕都可以从堆栈中弹出,上一个屏幕再次显示侧面动画,这次显示在右侧

我想知道在react native中是否可以实现上述功能?如果是,我如何实现?我希望我能展示这个设计,但我做不到

有了它,你就可以做到

安装时使用:

npm install --save react-native-vertical-view-pager
或使用纱线(如果使用纱线):

使用方法如下:

从“React”导入React;
从“react native”导入{样式表、文本、视图、维度};
从“react native vertical view pager”导入VerticalViewPage;
const{width,height}=Dimensions.get('window');
导出默认类App扩展React.Component{
render(){
返回(
第1页:打开App.js开始使用你的应用程序!
第2页:您所做的更改将自动重新加载。
第3页:摇动手机打开开发者菜单。
);
}
}
const styles=StyleSheet.create({
page_容器:{
弹性:1,
为内容辩护:“中心”,
对齐项目:“居中”,
宽度,
高度
}
});

您的屏幕位于视图位置。

我可以使用名为“react native modalfy”的非常酷的库来实现此功能

import React,{PureComponent}来自“React”
进口{
缓和,,
尺寸,
状态栏,
样式表,
文本,
看法
}从“反应本机”
从“react native modalfy”导入{ModalProvider,createModalStack}
从“./modals/cardmodel”导入cardmodel
从“./components/Button”导入按钮
const{width}=Dimensions.get('screen')
const config={ModalA:cardmodel,ModalB:cardmodel,ModalC:cardmodel}
const defaultOptions={
transitionOptions:animatedValue=>({
不透明度:animatedValue.interpolate({
输入范围:[0,1,2],
输出范围:[0,1,9],
}),
转换:[
{
展望:2000年
},
{
translateX:animatedValue.interpolate({
输入范围:[0,1,2],
输出范围:[-宽度/2,0,25],
}),
},
{
缩放:animatedValue.interpolate({
输入范围:[0,1,2],
输出范围:[1.2,1,9],
}),
},
],
}),
动画配置:{
缓和:缓和.bezier(.42,-0.03,27,95),
持续时间:450,
},
动画输出配置:{
缓和:缓和.bezier(.42,-0.03,27,95),
持续时间:450,
},
}
常量堆栈=createModalStack(配置,默认选项)
类应用程序扩展了PureComponent{
render(){
返回(
RNM
)
}
}
const styles=StyleSheet.create({
容器:{
弹性:1,
背景颜色:“靛蓝”,
对齐项目:“居中”,
为内容辩护:“中心”
},
标题:{
颜色:'白色',
尺码:54,
fontWeight:'粗体',
marginBottom:50,
},
})
导出默认应用程序
yarn add react-native-vertical-view-pager