退出应用时,将方向从纵向更改为横向

时间:2016-11-21 20:29:04

标签: android android-layout screen-orientation

所以我在我的应用程序中手动将onCreate中的方向设置为肖像:

@Override
    protected void onCreate(final Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}

但是当我退出应用程序时,我想将布局更改为(强制)回到横向。 目前,如果我的设备被锁定在横向状态,并且在启动应用时它会变为纵向模式,我希望能够回到横向状态。反之亦然,onResume我希望它回到肖像。有没有办法做到这一点?

编辑:这是我在退出应用程序时尝试手动将方向设置回横向的位置,但方向不会改变。当我启动内核映像时,它的默认设置是横向,但是当我在应用程序中更改方向时,方向会在应用程序菜单和主屏幕上全局设置它。

@Override
    public void onSaveInstanceState(Bundle savedInstanceState) {
        super.onSaveInstanceState(savedInstanceState);
        savedInstanceState.putInt("Position", myVideoView.getCurrentPosition());
        myVideoView.pause();
    }

    @Override
    public void onRestoreInstanceState(Bundle savedInstanceState) {
        super.onRestoreInstanceState(savedInstanceState);
        position = savedInstanceState.getInt("Position");
        myVideoView.seekTo(position);
    }

    @Override
    public void onDestroy() {
        super.onDestroy();
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
        Log.d(CLASS_NAME, "-- ON DESTROY --");
    }

    @Override
    public void onPause() {
        super.onPause();
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
        Log.d(CLASS_NAME, "-- ON PAUSE --");

    }

    @Override
    public void onStop() {
        super.onStop();
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
        Log.d(CLASS_NAME, "-- ON STOP --");
    }

0 个答案:

没有答案