React Native之特定平台

2018-09-07  本文已影响16人  谢尔顿

在跨平台时,我们可能需要不同的平台编写不同代码的需求。

第一种方式:

var styles = StyleSheet.create({
    height:Platform.OS === "ios" ? 200:100
})

Platform.OS在iOS上会返回ios,在Android设备上会返回android。

第二种方式:

var styles = StyleSheet.create({
    container:{
        flex: 1,
        ...Platform.select({
            ios:{
                backgroundColor:"red"
            },
            android:{
                backgroundColor: "blue"
            }
        })
    }
})

也可以利用Platform.selecte实现不同平台返回不同的组件。

const  Component = Platform.select({
    ios:()=> require("ComponentIOS"),
    android:()=> require("ComponentAndroid")
})
<Component/>
if (Platform.Version() === 25) {
    console.log("Running on Nougat!")
}
var majorVersionIOS = parseInt(Platform.Version,10);
if (majorVersionIOS <= 9) {
    console.log("Work around a change in behavior")
}
上一篇下一篇

猜你喜欢

热点阅读