跳到主要内容
版本:0.82

平台

示例


参考

属性

constants

tsx
static constants: PlatformConstants;

返回一个对象,其中包含与平台相关的所有可用的通用和特定常量。

属性:

名称
类型可选描述
isTestingboolean
reactNativeVersionobject关于 React Native 版本的信息。键为 majorminorpatch,可选 prerelease,值为 number
Version
Android
number特定于 Android 的操作系统版本常量。
Release
Android
string
Serial
Android
stringAndroid 设备的硬件序列号。
Fingerprint
Android
string唯一标识构建的字符串。
Model
Android
stringAndroid 设备的最终用户可见名称。
Brand
Android
string与产品/硬件关联的消费者可见品牌。
Manufacturer
Android
stringAndroid 设备的制造商。
ServerHost
Android
string
uiMode
Android
string可能的值为:'car''desk''normal''tv''watch''unknown'。了解更多关于 Android ModeType
forceTouchAvailable
iOS
boolean指示设备上 3D Touch 的可用性。
interfaceIdiom
iOS
string设备的界面类型。了解更多关于 UIUserInterfaceIdiom
osVersion
iOS
string特定于 iOS 的操作系统版本常量。
systemName
iOS
string特定于 iOS 的操作系统名称常量。

isPad
iOS

tsx
static isPad: boolean;

返回一个布尔值,定义设备是否为 iPad。

类型
boolean

isTV

tsx
static isTV: boolean;

返回一个布尔值,定义设备是否为电视。

类型
boolean

isVision

tsx
static isVision: boolean;

返回一个布尔值,定义设备是否为 Apple Vision。如果您使用的是 Apple Vision Pro (Designed for iPad)isVision 将为 false,但 isPad 将为 true

类型
boolean

isTesting

tsx
static isTesting: boolean;

返回一个布尔值,定义应用程序是否在设置了测试标志的开发模式下运行。

类型
boolean

OS

tsx
static OS: 'android' | 'ios';

返回表示当前操作系统的字符串值。

类型
enum('android', 'ios')

Version

tsx
static Version: 'number' | 'string';

返回操作系统的版本。

类型
number
Android

string
iOS

方法

select()

tsx
static select(config: Record<string, T>): T;

返回最适合您当前运行平台的值。

参数:

名称类型必需描述
configobject见下方的 config 描述。

Select 方法返回最适合您当前运行平台的值。也就是说,如果您在手机上运行,androidios 键将优先。如果未指定这些,将使用 native 键,然后是 default 键。

config 参数是一个具有以下键的对象:

  • android (any)
  • ios (any)
  • native (any)
  • default (any)

示例用法:

tsx
import {Platform, StyleSheet} from 'react-native';

const styles = StyleSheet.create({
container: {
flex: 1,
...Platform.select({
android: {
backgroundColor: 'green',
},
ios: {
backgroundColor: 'red',
},
default: {
// 其他平台,例如 web
backgroundColor: 'blue',
},
}),
},
});

这将导致容器在所有平台上具有 flex: 1,在 Android 上具有绿色背景色,在 iOS 上具有红色背景色,在其他平台上具有蓝色背景色。

由于相应平台键的值可以是 any 类型,select 方法也可用于返回特定于平台的组件,如下所示:

tsx
const Component = Platform.select({
ios: () => require('ComponentIOS'),
android: () => require('ComponentAndroid'),
})();

<Component />;
tsx
const Component = Platform.select({
native: () => require('ComponentForNative'),
default: () => require('ComponentForWeb'),
})();

<Component />;