这个类(我的是Activity中)继承SensorEventListener接口
先获取传感器对象,再获取传感器对象的类型
//获取传感器管理对象 SensorManager mSensorManager = (SensorManager)getSystemService(Context.SENSOR_SERVICE); // 获取传感器的类型(TYPE_ACCELEROMETER:加速度传感器) Sensor mSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
这里我们除了可以获取加速度传感器之外,还可以获取其他类型的传感器,如:
重写注册方法
@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[]数组传给需要使用的对象就能使用了。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对菜鸟教程(cainiaojc.com)的支持。如果你想了解更多相关内容请查看下面相关链接
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#cainiaojc.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。