有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java根据重力移动图像视图?

我试图让ImageView根据用户倾斜设备的方式移动。 我还在学习Android开发,所以我对传感器知之甚少。 我试过用这个,但我不确定以后该怎么做,但我猜我走对了方向

ImageView image = (ImageView) findViewById(R.id.image);
SensorManager mSensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
Sensor mSensor =  mSensorManager.getDefaultSensor(Sensor.TYPE_GRAVITY);

任何提示都会有帮助 谢谢!


共 (2) 个答案

  1. # 1 楼答案

    看看这个{a1}问题,了解更多关于引力的知识

    试着通过这个example学习指南针是如何工作的

    我猜你在寻找解决方案

    ImageView move according to however the user tilts the device

    就是这个样子accelerometer example

    enter image description here

  2. # 2 楼答案

    您需要创建并注册一个SensorListener

    mSensorManager.registerListener(mSensorListener, sensor, SensorManager.SENSOR_DELAY_GAME);
    

    然后在SensorListener的onSensorChanged(SensorEvent event)方法中,从event.values数组中获取传感器读数

    这将获得重力值,然后使用该值移动ImageView

    至于如何移动ImageView,这在很大程度上取决于视图所处的Layout类型,但您可以随意设置ImageView's边距