我正在尝试使用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/

10-13 04:23