启用全屏手势功能且设备具有 Notch 时,在 React Native 中获取设备屏幕高度

Posted

技术标签:

【中文标题】启用全屏手势功能且设备具有 Notch 时,在 React Native 中获取设备屏幕高度【英文标题】:Get device screen height in React Native when Full Screen Gesture feature is enabled and the device have a Notch 【发布时间】:2020-01-05 04:00:30 【问题描述】:

我需要获取启用了全屏手势功能并且拥有的设备的真实屏幕高度一个档次

问题是这两个设备功能都可以由用户修改,我的意思是启用/禁用全屏手势和启用缺口隐藏。

我尝试过使用 React Native 的 "Dimensions" 类的函数,但没有结果。

如何检测当前设备是否启用了这些功能以正确调整屏幕高度?

【问题讨论】:

【参考方案1】:

在RN中玩了一点CSS后,发现在使用Flex模型时,有些属性可能会很棘手。

就我而言,真正的问题是将视图扩展到设备高度,无论设备是否启用了凹槽或手势模式。

如果我们将 flex: 1 设置为视图的每个层次级别,从根父级到所需视图,那么这些视图将表现为全高/全宽

例子:

<View style=flex: 1">
    <View style=flex: 1">
        <View style=flex: 1">
            This view will expand to full height and width
        </View>
    </View>
</View>

【讨论】:

以上是关于启用全屏手势功能且设备具有 Notch 时,在 React Native 中获取设备屏幕高度的主要内容,如果未能解决你的问题,请参考以下文章

Qt Quick 2 iOS Notch 避免

如何为 UINavigationController 启用全屏平移

iPhone X 和 Notch 检测

MpMovieplayerController 点击手势识别器在全屏时不会触发

R语言使用ggplot2包使用geom_boxplot函数绘制基础分组缺口箱图(notch boxplot)实战

在具有相同触摸的视图上切换手势