Android(安卓)SensorEventListener
16lz
2022-03-19
通过SensorEventListener可以实现对传感器的监听,但是在监听之前,需要注册监听事件:
mSensorManager.registerListener(this, mSensorManager.getDefaultSensor(Sensor.TYPE_ORIENTATION), SensorManager.SENSOR_DELAY_FASTEST);
具体的监听代码在下面方法中实现:
@Override public void onAccuracyChanged(Sensor sensor, int accuracy) { } @Override public void onSensorChanged(SensorEvent event) { if (event.sensor.getType() == Sensor.TYPE_ORIENTATION) { if(Math.abs(event.values[2]) > 70.0f) { orientation.setText("横屏"); } else if(Math.abs(event.values[1]) > 70.0f && Math.abs(event.values[1]) < 120) { orientation.setText("竖屏"); } else if((Math.abs(event.values[2]) < 20.0f && Math.abs(event.values[1]) < 20.0f) || (Math.abs(event.values[2]) < 20.0f && Math.abs(event.values[1]) > 160.0f)) { orientation.setText("水平"); } else{ orientation.setText(""); } } }
在不需要时,记得注销注册的服务哦:
mSensorManager.unregisterListener(this);
多说一句:看到这段代码,勾起了以往的一些回忆!雁过留名,人过留声!
更多相关文章
- android 禁用解锁
- 区分IOS和Android
- [Android] Android(安卓)监听WIFI
- Android监听键盘显示和隐藏
- Android横竖屏总结
- Android(安卓)PullToRefreshView巴黎埃菲尔铁塔效果
- Android实用代码片段(一)
- android:启动界面设计
- android实现虚拟按键实例