React Native Expo -锁定景观方向

tf7tbtn2  于 2023-08-07  发布在  React
关注(0)|答案(4)|浏览(105)

我正在尝试让我的expo react-native应用程序以横向显示
我编辑了app.json:

"orientation": "landscape",

字符串
App.js中的这个

import { ScreenOrientation } from 'expo';

export default class App extends React.PureComponent {
  // ...
  componentDidMount() {
    ScreenOrientation.lockAsync(ScreenOrientation.OrientationLock.LANDSCAPE);
  }
  // ...
}


我尝试在Android模拟器中运行,但看起来模拟器被锁定在肖像模式。设备的物理方向是横向的,应用程序是“伸展”以适应横向屏幕,但Android似乎锁定在纵向模式:
https://i.ibb.co/dK54ngp/Capture.png
我检查了设备设置,“自动旋转”是开的。
我想我错过了什么,但我找不到什么。
有人能告诉我需要做什么来锁定应用程序到横向模式?

  • 编辑 *:

它似乎可以和Nexus5模拟器一起工作,而不是Nexus 9

zpjtge22

zpjtge221#

对我来说,只要在app.json中改变方向就足够了,不需要代码。

lyfkaqu1

lyfkaqu12#

用这个改变。

import * as ScreenOrientation from 'expo-screen-orientation';
ScreenOrientation.unlockAsync()

字符串

wvyml7n5

wvyml7n53#

在最后一个Expo版本中,有一些与方向有关的错误。
看看这个:https://github.com/expo/expo/issues/8210

xmjla07d

xmjla07d4#

App/tsx / App.jsx

import * as ScreenOrientation from "expo-screen-orientation";
ScreenOrientation.lockAsync(ScreenOrientation.OrientationLock.LANDSCAPE);
// or
ScreenOrientation.lockAsync(5);

字符串
参考:https://docs.expo.dev/versions/latest/sdk/screen-orientation/

相关问题