gpt4 book ai didi

java - 仅在横向模式下强制旋转屏幕卡住

转载 作者:行者123 更新时间:2023-12-02 10:12:38 26 4
gpt4 key购买 nike

在我的Activity中,如果我单击按钮,我就会将屏幕旋转到横向模式,但它只支持横向模式。如何开启人像模式?我正在使用以下代码进行强制旋转。

   rotate.setOnClickListener(new Button.OnClickListener(){

@Override
public void onClick(View v) {
this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
}

});

上面的代码覆盖了 native 旋转功能,有人可以建议我如何启用 native 旋转功能吗?

最佳答案

您可以使用此代码以编程方式完成此操作

potraitButton.setOnClickListener(new Button.OnClickListener(){

@Override
public void onClick(View v) {
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}

});

buttonLandscape.setOnClickListener(new Button.OnClickListener(){

@Override
public void onClick(View v) {
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
}

});

如果您想自动旋转屏幕:

SensorManager sensorManager = (SensorManager) this.getSystemService(Context.SENSOR_SERVICE);
sensorManager.registerListener(new SensorEventListener() {
int orientation=-1;;

@Override
public void onSensorChanged(SensorEvent event) {
if (event.values[1]<6.5 && event.values[1]>-6.5) {
if (orientation!=1) {
Log.d("Sensor", "Landscape");
}
orientation=1;
} else {
if (orientation!=0) {
Log.d("Sensor", "Portrait");
}
orientation=0;
}
}

@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {


}
}, sensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER), SensorManager.SENSOR_DELAY_GAME);

关于java - 仅在横向模式下强制旋转屏幕卡住,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54892093/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com