Android 重力感应和手动横竖屏切换

/**
 * 切换横竖屏
 */
private void changeLandScape() {
    if (newConfig != null && newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
    } else {
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
    }
}

@Override
public void onConfigurationChanged(Configuration newConfig) {
    super.onConfigurationChanged(newConfig);
    this.newConfig = newConfig;
}

配合隐藏状态栏和虚拟按键,参考链接:

android隐藏状态栏和虚拟按键_csdnwr的博客-CSDN博客