Android 平板电脑横向和纵向模式

Android Tablet Landscape and Portrait Modes

我也想将我的移动应用程序扩展到 Android 平板电脑。我的移动应用程序在移动设备上仅支持人像模式,但在平板电脑中我想同时支持风景和人像模式。

但我不想在 运行 时更改模式。

例如。如果用户在横向模式下使用平板电脑打开应用程序,即使用户在使用应用程序时旋转到纵向模式,应用程序也应该 运行 仅在横向模式下。

这在 iPad 中是可行的,但我不知道在 Android 平板电脑中是否可行。

如果可以的话我该怎么做?

您可以像这样在清单文件中提供默认方向

 <activity
        android:name=".MainActivity"
        android:screenOrientation="portrait">

这不是正统的方法,但你可以这样实现,创建 2 个资源文件,一个是通用的,一个是 sw600dp(平板电脑)的,并添加一个 bool "istablet"

然后在你的 activity OnCreate 方法中

@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    if(!getResources().getBoolean(R.bool.is_tablet)) {
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
    }
}