我的应用程序处于纵向模式,其中有一个视频视图,在某些事件中,我只想将视频视图旋转到横向模式是否可以这样做?
从代码中我们可以将单个视图修改为横向模式,因为其他视图将保持纵向模式吗?
我的活动中还有onOrientationChanged
监听器,它提供orientation
值作为设备方向更改。如何根据这些值确定设备是处于横向还是纵向模式?
答案 0 :(得分:1)
是的,这是可能的。 您可以使用以下代码在运行时获取方向:
Display display = ((WindowManager) getSystemService(WINDOW_SERVICE)).getDefaultDisplay();
//orientation will contain Configuration.ORIENTATION_PORTRAIT or Configuration.ORIENTATION_LANDSCAPE
int orientation = display.getOrientation();
因此,如果您想在更改方向时制作某些内容,则可以覆盖onConfigurationChanged
方法。
如果您想在运行时更改方向,可以使用此方法(例如,更改为肖像):
setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
如果想了解更多详情,请阅读this