device

继承自NativeObject

提供应用运行设备的信息。

通过“const {device} = require('tabris');”引入该对象

示例:

  1. let lang = device.language;
  2. device.on("orientationChanged", ({value: orientation}) => console.log("new orientation: ", orientation));

Properties

language

只读 Type: string

设备配置的兼容RFC 4646的字符串。例如"de", "es-ES", 等。全局时也可用navigator.language访问。这个属性只能在控件创建时设置。一旦设置,无法修改。

model

只读 Type: string

设备型号的名称。例如"iPad4,1""Nexus 7"。全局时也可用device.model访问。这个属性只能在控件创建时设置。一旦设置,无法修改。

orientation

只读 Type: string, 支持的值: portrait-primary, portrait-secondary, landscape-primary, landscape-secondary

设备方向。portrait-primary, portrait-secondary, landscape-primary, and landscape-secondary中的一个。

platform

Type: string, 支持的值: Android, iOS, windows

平台名称。目前为"Android", "iOS", 或"windows"。全局时也可用device.platform访问。这个属性只能在控件创建时设置。一旦设置,无法修改。

scaleFactor

只读 Type: number

设备像素比。全局时也可用window.devicePixelRatio访问。这个属性只能在控件创建时设置。一旦设置,无法修改。

screenHeight

只读 Type: number

设备独立像素下设备整个屏幕高度。取决于设备方向。全局时也可用screen.height访问。这个属性只能在控件创建时设置。一旦设置,无法修改。

screenWidth

只读 Type: number

设备独立像素下设备整个屏幕宽度。取决于设备方向。全局时也可用screen.width访问。这个属性只能在控件创建时设置。一旦设置,无法修改。

version

只读 Type: string

平台版本。在iOS上可能是这样:"8.1.1"。Android上,返回这样的版本号。全局时也可用device.version访问。这个属性只能在控件创建时设置。一旦设置,无法修改。

win_keyboardPresent

Windows 10

只读 Type: boolean

如果硬件键盘存在则返回true。这种情况下开发者可选择处理一些用户输入。只在windows平台下可用。

win_primaryInput

Windows 10

只读 Type: boolean, supported values: touch, mouse

在PC设备上,平板模式时返回"touch",其他模式返回"mouse"。在手机上,当显示在外部设备“Continuum(一种连接设备)”时,返回"mouse",其他返回"touch"。只在windows可用。

Events

orientationChanged

orientation属性改变且旋转动画已完成时时触发。

事件参数

  • target: this 事件触发的控件。

  • value: stringorientation属性新的值。

win_keyboardPresentChanged

win_keyboardPresent属性改变时触发。

事件参数

win_primaryInputChanged

win_primaryInput属性改变时触发。

事件参数

  • target: this 事件触发的控件。

  • value: booleanwin_primaryInput属性新的值。

示例

  1. const {TextView, device, ui} = require('tabris');
  2. // Display available device information
  3. ['platform', 'version', 'model', 'language', 'orientation'].forEach((property) => {
  4. new TextView({
  5. id: property,
  6. left: 10, right: 10, top: 'prev() 10',
  7. text: property + ': ' + device[property]
  8. }).appendTo(ui.contentView);
  9. });
  10. device.on('orientationChanged', ({value: orientation}) => {
  11. ui.contentView.find('#orientation').set('text', 'orientation: ' + orientation);
  12. });

原文:

https://youjingyu.github.io/Tabris-Documention/?folderName=api&pageName=device.html