当前位置: 移动技术网 > IT编程>移动开发>Android > Android传感器SensorEventListener之加速度传感器

Android传感器SensorEventListener之加速度传感器

2019年07月29日  | 移动技术网IT编程  | 我要评论

7 k7k小游戏,夕纪十六岁,清朝种田记

这个类(我的是activity中)继承sensoreventlistener接口

先获取传感器对象,再获取传感器对象的类型

//获取传感器管理对象
    sensormanager msensormanager = (sensormanager)getsystemservice(context.sensor_service);
     // 获取传感器的类型(type_accelerometer:加速度传感器)
    sensor msensor = msensormanager.getdefaultsensor(sensor.type_accelerometer);

这里我们除了可以获取加速度传感器之外,还可以获取其他类型的传感器,如:

  • * sensor.type_orientation:方向传感器。
  • * sensor.type_gyroscope:陀螺仪传感器。
  • * sensor.type_magnetic_field:磁场传感器。
  • * sensor.type_gravity:重力传感器。
  • * sensor.type_linear_acceleration:线性加速度传感器。
  • * sensor.type_ambient_temperature:温度传感器。
  • * sensor.type_light:光传感器。
  • * sensor.type_pressure:压力传感器。

重写注册方法

@override
  protected void onresume(){
    super.onresume();
    //为加速度传感器注册监听器
    msensormanager.registerlistener(this, msensor, sensormanager.sensor_delay_game);
  }

重写onsensorchanged方法

@override
   public void onsensorchanged(sensorevent event){
     values = event.values;
     stringbuilder sb = new stringbuilder();
     sb.append("x方向的加速度:");
     sb.append(values[0]);
     sb.append("/ny方向的加速度:");
     sb.append(values[1]);
     sb.append("/nz方向的加速度:");
     sb.append(values[2]);
     mtextvalue.settext(sb.tostring());//输出到imageview上,就可看见加速度的变化
   }

重写取消监听的方法

  @override
  protected void onstop(){
    super.onstop();
    //取消监听
    msensormanager.unregisterlistener(this);
  }

这样就能获取加速啦。

将values[]数组传给需要使用的对象就能使用了。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对移动技术网的支持。如果你想了解更多相关内容请查看下面相关链接

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网