首页 > 解决方案 > 在 React-Native 中的所有方向上创建具有固定宽度百分比的视图

问题描述

我想创建一个包含卡片的视图 - 始终具有'90%'窗口的宽度,无论何时设备是垂直或水平的,或者组件是否在父级中。

我尝试了什么:

1 使用百分比

( width: '90%'):

如果我在屏幕的主视图上单独使用我的卡片效果很好,但是当我在水平方向使用我的卡片ScrollView和其他卡片时,我可以看到很多卡片,但我只想在滚动之前看到一张卡片。

2 使用React.Dimensions

Dimensions.get('window').width*0.9有一些填充):

当我单独使用卡片或什至在滚动视图中使用许多卡片时,它可以完美运行,但是当我更改屏幕的方向时,它占用的屏幕宽度小于“90%”。

3 基于这个答案使用弹性基础

有没有更好的方法来实现我的目标?

标签: react-nativeflexbox

解决方案


你可能想看看这个包https://github.com/marudy/react-native-responsive-screen 这个包不需要任何方向改变支持。它实际上只是一个文件,所以你可能想看看


推荐阅读