Cordova 屏幕方向插件
Cordova 插件以一种通用的方式为 iOS、Android 和 windows-uwp 设置/锁定屏幕方向。此插件基于 屏幕方向 API,因此 API 与当前规范匹配。
该插件向屏幕对象 (window.screen
) 添加以下内容
// lock the device orientation
.orientation.lock('portrait')
// unlock the orientation
.orientation.unlock()
// current orientation
.orientation
安装
cordova plugin add cordova-plugin-screen-orientation
支持的方向
portrait-primary
方向处于主要纵向模式。
portrait-secondary
方向处于次要纵向模式。
landscape-primary
方向处于主要横向模式。
landscape-secondary
方向处于次要横向模式。
portrait
方向为 portrait-primary 或 portrait-secondary(传感器)。
landscape
方向为 landscape-primary 或 landscape-secondary(传感器)。
any
方向已解锁 - 支持所有方向。
用法
// set to either landscape
screen.orientation.lock('landscape');
// allow user rotate
screen.orientation.unlock();
// access current orientation
console.log('Orientation is ' + screen.orientation.type);
事件
Android 和 iOS 都将在窗口对象上触发 orientationchange 事件。对于此版本的插件,如果您需要通知,请使用窗口对象。
示例用法
window.addEventListener("orientationchange", function(){
console.log(screen.orientation.type); // e.g. portrait
});
还将“change”事件监听器添加到 screen.orientation 对象。
示例用法
screen.orientation.addEventListener('change', function(){
console.log(screen.orientation.type); // e.g. portrait
});
// OR
screen.orientation.onchange = function(){console.log(screen.orientation.type);
};
Android 说明
当手机旋转 180 度时,screen.orientation 属性不会更新。
Windows UWP 说明
Windows 应用商店应用程序 (windows-uwp) 仅在设备具有某种加速度计的情况下才会显示方向更改。 “方向”的内部状态仍将保留,但除非设备支持,否则实际屏幕不会旋转。