gpt4 book ai didi

android - 触发点击按钮后,如何在 android 中再次启用自动旋转?

转载 作者:行者123 更新时间:2023-11-29 21:15:12 24 4
gpt4 key购买 nike

我创建了一个示例应用程序,它使用按钮触发全屏,启用自动旋转的触发也全屏,但在使用自动旋转后,如果我使用按钮触发另一个方向变化,那么在我点击按钮后,我的 Activity 现在不能自动执行从改变方向再次旋转,现在只有按钮可以改变模式,自动旋转不能再使用了。如何解决这个问题?

这正常吗?

按钮调整大小

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();
}
}

最佳答案

我遇到了同样的问题,解决方法如下:

通过代码旋转后设置setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED):

来自:

public void clickResize(View view) {
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);}

收件人:

public void clickResize(View view) {
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED)}

关于android - 触发点击按钮后,如何在 android 中再次启用自动旋转?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21593167/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com