我正在尝试使用 OrientationEventListener 检测设备方向的变化,因此我可以使一些按钮随设备方向旋转,同时将布局设置为纵向。我想知道使用 SensorEventListener 执行此操作是否是一个更好的主意,但我不知道如何执行此操作,因为我以前从未使用过传感器。有什么办法可以做到这一点吗?
最佳答案
OrientationEventListener 是正确的选择。为什么您认为 SensorEventListener 更好?
做这样的事情:
OrientationEventListener orientationEventListener = new OrientationEventListener(this, SensorManager.SENSOR_DELAY_UI) {
@Override
public void onOrientationChanged(int angle) {
if(angle > 260 && angle < 280) {
button.setRotation(90);
} else if(angle > 80 && angle < 100) {
button.setRotation(270);
} else if(angle > 350 || angle < 10){
button.setRotation(0);
}
}
};
orientationEventListener.enable();
关于android - 如果方向设置为纵向,是否仍然可以检测到方向变化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33457945/