2.2.6.2.1 UI适配
由于手机的多样式性,手机屏幕大小,分辨率,长宽比都不一致,这给开发高质量的界面带了困难。
平台建议开发时采用Viewport,虚拟屏幕的方案。虚拟屏幕方案把手机屏幕宽度虚拟成同样大小,比如375。这实际是一个比例单位,在不同手机上运行时,根据比例转换为手机实际单位。
获取比例:这里按375虚拟屏幕。
import { Dimensions,} from 'react-native'
const width = Dimensions.get('window').width;
const rate = width / 375
示例代码:
<View style={[{width: rate * 100}]}>
<Text>Hello world</Text>
</View>
高度适配:
由于手机屏幕存在屏幕纵横比不一致的情况,所以虚拟相同宽度的屏幕后,高度可能会存在差异。
平台建议高度也可以使用虚拟的比例值,但是需要注意两点:
1.最外层一定要使用flex:1,撑满全屏。
2.在水平向需要考虑弹性设计。