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);
}
}
我也想将我的移动应用程序扩展到 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);
}
}