react native Expo适配全面屏/Expo识别全面屏和正常屏

1、最新版本的expo已经默认支持了全面屏,即不会像react native cli同样出现底部黑边react

2、可是全面屏经过Dimensions.get('window')获取的高度仍是不许确,由于全面屏的statusBar高度问题。get

3、适配方案io

经过获取屏幕纵横比来判断是否为全面屏cli

一、获取宽高im

const {width,height} = Dimensions.get('window')co

二、计算纵横比版本

const wh = height/widthconst

三、全面屏手机通常纵横比wh大于1.8,正常手机屏幕小于1.8

四、获取statusBar高度

const { StatusBarManager } = NativeModules;

五、纵横比减去2个statusBar高度就是正常的了

相关文章
相关标签/搜索