[img]https:/ /i.stack.imgur.com/G9OgG.gif[/img]
Прослушиватель датчика гравитации в файле активности Java:
Код: Выделить всё
@Override
protected void onResume() {
super.onResume();
mSensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
mSensorManager.registerListener(this, mSensorManager.getDefaultSensor(Sensor.TYPE_GRAVITY), SensorManager.SENSOR_DELAY_UI);
}
public void onSensorChanged(SensorEvent event) {
float x = event.values[0];
float y = event.values[1];
float z = event.values[2];
ImageView fluid = (ImageView) findViewById(R.id.fluid);
fluid.setRotation((float) Math.toDegrees(acos(y / 9.8)));
if (x < 0) {
fluid.setRotation(fluid.getRotation() * -1);
}
}
Код: Выделить всё

Установка ширины и высоты 1000000dp не работает, поскольку границы экрана ограничьте размер при первом запуске, но при наклоне вы можете увидеть пустое пространство, потому что прямоугольник уже недостаточно велик, чтобы покрыть все пространство...
Подробнее здесь: https://stackoverflow.com/questions/448 ... sor-values