android - 设置初始屏幕方向

标签 android screen-orientation android-4.2-jelly-bean

我正在开发一个应用程序,我想要查看的第一个屏幕是纵向。然后我去下一个横向设置的 Activity 。

我面临的问题是,如果我返回到第一个屏幕,它将被设置为横向,显然继承了前一个屏幕的方向。

是否有可能将初始屏幕方向设置为纵向,但用户可以继续并在需要时将其更改为横向?

谢谢

编辑:已解决

感谢您的建议。我已经克服了这个问题。解释起来有点困难,但我会尽力而为。

所以我的第一个 Activity 有一个功能,如果手机转向横向,它会全屏显示图像。再一次,如果手机是纵向的,纵向 View ,我有一个 ListView 。

第二个 Activity 加载一个编辑页面,让我更改该图像。

所以现在如果我按回编辑器 Activity 。第一个 Activity 将加载到 LANDSCAPE 中的 ListView 中。这不是我想要的。

因此为了解决这个问题。我首先在第一个 Activity 是横屏时禁用了后退按钮,这样用户就无法在不将手机转为横屏的情况下将自己从 View 中移除。

然后我移动了代码:

    @Override
    public void onConfigurationChanged(Configuration newConfig) {
        super.onConfigurationChanged(newConfig);
        if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
            //Show landscape picture
            }
    }

在 onCreate 方法之前到我类(class)的顶部。

这已经解决了我的问题,所以现在,如果我要回到我的第一个 Activity ,而在风景中,唯一会显示的是风景 View 。

我希望上面的内容足够清楚,让所有人都能理解 :)

再次感谢您的帮助!

最佳答案

您可以在 onCreate()- 方法中以编程方式设置屏幕方向:

this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

就在调用 super.onCreate(); 之前。

希望能帮到你。

最好的问候, G_J

关于android - 设置初始屏幕方向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17379265/

相关文章:

android - 如何防止用户关闭应用程序 - Android 4.0.3

android - 如何在 Android 设备中获取文件 *.apk 位置

java - Android 版本 4.2.2 上的 sqlcipher 出现 Android 错误

android - 编辑 android VideoView 帧

android - 如何知道设备中配置的多个用户?

Android:按下按钮时以编程方式添加 EditText

android - Android Studio 中带有自定义适配器的自定义 ListView

android - AsyncTask 和方向变化

android - 默认设备旋转关闭时是否可以更改设备方向?

android - 如何在 Android Robolectric 测试中强制更改配置?