我有一个完全为纵向模式编写的应用程序。
但是我有一个活动,我正在播放视频。
我想检测用户已将设备置于横向位置,因此我只需在视频播放器中调用 API 调用即可将视频播放设置为全屏。
我目前所做的是添加
android:screenOrientation="fullSensor"
android:configChanges="orientation|screenSize"
在 android 清单中,然后重写此方法以获取代码中的事件回调。
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
}
但是,我注意到当我这样做时,我的屏幕实际上改变了方向。
有没有办法保持纵向模式,只收到来自安卓的回调?
您可以改为收听加速度计传感器,并检测手机何时横向握持。这样,您可以决定在任何情况下显示屏幕的方向。
要了解如何获取加速计数据,请参阅 Android 文档。