【发布时间】:2020-07-24 01:03:16
【问题描述】:
我正在构建一个 react-native 应用程序,我想在其中为 android 平板电脑启用(纵向 + 横向)模式,为 android 手机启用纵向模式。
我知道 iPad/iPhone 的解决方案,所以如果有人可以帮助我进行 android 配置,那就太好了
【问题讨论】:
标签: javascript android reactjs react-native mobile
我正在构建一个 react-native 应用程序,我想在其中为 android 平板电脑启用(纵向 + 横向)模式,为 android 手机启用纵向模式。
我知道 iPad/iPhone 的解决方案,所以如果有人可以帮助我进行 android 配置,那就太好了
【问题讨论】:
标签: javascript android reactjs react-native mobile
请将以下代码添加到android/app/src/main/java/com/[你的项目名称]/MainActivity.java
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (getResources().getBoolean(R.bool.portrait_only)) {
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}else{
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR);
}
}
之后创建三个 bools.xml 文件
android/app/src/main/res/values/bools.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<bool name="portrait_only">true</bool>
</resources>
android/app/src/main/res/values-sw600dp/bools.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<bool name="portrait_only">false</bool>
</resources>
android/app/src/main/res/values-xlarge/bools.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<bool name="portrait_only">false</bool>
</resources>
【讨论】: