3

我正在制作一个应用程序,我想查看的第一个屏幕是人像。然后我去下一个在风景中设置的活动。

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

有没有一种可能的方法将初始屏幕方向设置为已设置的纵向,但用户可以在需要时继续将其更改为横向?

谢谢

编辑:已解决

谢谢你的建议。我已经克服了这个问题。这有点难以解释,但会尽力而为。

所以我的第一个活动有一个功能,如果手机变成横向,它将显示一个图像,全屏。再一次,如果手机是纵向的,纵向视图,我有一个列表视图。

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

所以现在如果我按下编辑器活动。第一个活动将加载到 LANDSCAPE 中的列表视图中。这不是我想要的。

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

然后我移动了代码:

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

在 onCreate 方法之前到我的班级顶部。

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

我希望这足够清楚让所有人都能理解:)

再一次感谢你的帮助!

4

4 回答 4

5

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

this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

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

我希望,我可以帮助你。

最好的问候, G_J

于 2013-06-29T10:39:25.303 回答
2

您可以在每个活动标签内的应用程序清单文件中使用它来更改单个活动的方向:

android:configChanges="orientation"

_

android:screenOrientation="portrait"

或者

android:screenOrientation="landscape"

根据您的需要

于 2013-06-29T10:36:49.433 回答
1

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

this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

就在接到电话后super.onCreate();.

或者

您还可以像这样在清单文件中指定方向

<activity android:name="com.example.project.activity"
                  android:screenOrientation="portrait"/>
于 2013-07-02T09:56:45.797 回答
0

谢谢你的建议。我已经克服了这个问题。这有点难以解释,但会尽力而为。

所以我的第一个活动有一个功能,如果手机变成横向,它将显示一个图像,全屏。再一次,如果手机是纵向的,纵向视图,我有一个列表视图。

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

所以现在如果我按下编辑器活动。第一个活动将加载到 LANDSCAPE 中的列表视图中。这不是我想要的。

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

然后我移动了代码:

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

在 onCreate 方法之前到我的班级顶部。

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

我希望这足够清楚让所有人都能理解

再一次感谢你的帮助!

于 2013-07-02T09:39:03.977 回答