当应用程序在横屏模式下启动时,即使以编程方式将方向设置为纵向,它也会在横屏模式下打开并切换回纵向。
我认为当屏幕方向以编程方式设置为纵向时,应用程序应该保持在纵向模式下,无论在哪种模式下启动。
我知道如果在清单中将屏幕方向设置为纵向,这个问题就可以解决,但我需要以编程方式设置方向。如果有人遇到过这个问题或者有任何想法来解决这个问题,请告诉我。
只有在应用程序启动时才会出现这种情况。下一次旋转屏幕时,它就能正常工作了。
以下是我用于锁定方向为纵向的代码:
以下是我用于锁定方向为纵向的代码:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
setContentView(R.layout.activity_main);
}
这段代码在 Android 7.1.1 及以下版本中运行良好。
if(requestedOrientation != ActivityInfo.SCREEN_ORIENTATION_PORTRAIT) { requestedOrientation = ActivityInfo.SCREEN_ORIENTATION_PORTRAIT; return }
,并且我正在使用Kotlin。 - Archit Sureja