当应用程序以横向模式启动时,它以横向模式打开并切换回纵向,尽管方向以编程方式设置为纵向。
我想当屏幕方向以编程方式设置为纵向时,无论您在哪种模式下启动,应用程序都应该保持纵向模式。
我知道我们是否在 list 中将屏幕方向设置为纵向
将解决这个问题,但我需要以编程方式设置方向。让我知道是否有人遇到此问题或有任何解决此问题的想法。
仅在启动应用程序时才会发生这种情况。下次旋转屏幕时,它工作正常。
下面是我用来将方向锁定为纵向的代码,
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
setContentView(R.layout.activity_main);
}
此代码在 Android 7.1.1 以下运行良好。
最佳答案
以下代码适用于所有设备:
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.O) {
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
} ... enter code here ...
关于android - Android 7.1.1 及更高版本中的方向问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47987084/