我为平板电脑和移动设备建立了不同的渲染逻辑。我想知道是否有一种方法获得以英寸为单位的屏幕大小,或者甚至还有任何模块可以自动检测设备是否为平板电脑

我之所以没有直接使用Dimensions API来获取屏幕分辨率,是因为有许多Android平板电脑的分辨率低于许多移动平板电脑。

谢谢。

最佳答案

根据@martinarroyo的答案,使用react-native-device-info软件包可以解决该问题。

但是,android实现是基于屏幕分辨率的。这可能是一个问题,因为许多平板电脑设备的分辨率低于许多移动设备,这可能会引起问题。

我将使用并建议的解决方案是将react-native-device-info用于苹果设备,对于android设备,请使用以下类型的简单比率逻辑:

function isTabletBasedOnRatio(ratio){

if(ratio > 1.6){
    return false;
}else{
    return true;
}

}

这不是一个完美的解决方案,但是也有许多具有类似手机比率甚至平板手机的小型平板电脑(Android还是模糊的),并且该解决方案也包括这些解决方案。

10-07 21:24