我创建了一个示例应用程序,该应用程序使用按钮触发全屏并启用了自动旋转触发器也全屏,但是在使用自动旋转之后,如果我使用按钮触发另一个方向更改,那么在我现在单击按钮后,我的活动无法再次自动旋转改变方向,现在只有按钮可以改变模式,自动旋转不能再使用了。如何解决这个问题?
正常吗?
按钮调整大小
public void clickResize(View view) {
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}
按钮全屏
public void clickFullscreen(View view) {
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
}
addflags、clearflags 和 configurationChanged() 的方法
private void onFullscreen() {
window.addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
window.clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
}
private void offFullscreen() {
window.addFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
window.clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
}
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
onFullscreen();
}
} else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT) {
offFullscreen();
}
}