我希望我的一个屏幕是严格的风景,但是,当设备转向(颠倒)但仍处于横向模式时,我希望我的活动也可以颠倒过来
我该怎么做?
答案 0 :(得分:4)
尝试android:screenOrientation =“sensorLandscape”
答案 1 :(得分:0)
只需在清单中的活动代码中设置android:screenOrientation =“landscape”即可。这将迫使它成为景观。
答案 2 :(得分:0)
在您的活动中,您必须覆盖ConfigurationChange并使其保持原状。
例如:
@Override
public void onConfigurationChanged(Configuration newConfig)
{
super.onConfigurationChanged(newConfig);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
}
答案 3 :(得分:0)
这就是我想要的:
OrientationEventListener orientationEventListener = new OrientationEventListener(this,Consts.SENSOR_ORIENTATION_DELAY_MS) {
@Override
public void onOrientationChanged(int orientation) {
Log.d(TAG,"sensor");
if(orientation>Consts.THRESHOLD_FOR_ORIENTATION_CHANGE) {
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_REVERSE_LANDSCAPE);
}else {
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
}
}
};
if(orientationEventListener.canDetectOrientation()) {
orientationEventListener.enable();
}