为网友们分享了相关的编程文章,网友红鸿雪根据主题投稿了本篇教程内容,涉及到Android光线传感器、Android光线传感、Android传感器、Android光线传感器相关内容,已被540网友关注,内容中涉及的知识点可以在下方直接下载获取。
Android光线传感器
本文实例为大家分享了Android光线传感器使用的具体代码,供大家参考,具体内容如下
一、首先是布局页面activity_light_sensor.xml
二、在对应的Activity中获取光线传感器的值LightSensorActivity,具体注释已经在代码中给出
public class LightSensorActivity extends AppCompatActivity implements SensorEventListener { private EditText editText; //传感器管理器对象 private SensorManager sensorManager; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_light_sensor); editText = findViewById(R.id.editText); sensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE); } @Override protected void onResume() { super.onResume(); //第一个参数:SensorEventListener对象用this来指定就可以了 // 第二个参数:传感器对象 光线传感器类型的常量:TYPE_LIGHT // 第三个参数:传感器数据的频率 这里采用适合游戏的频率 sensorManager.registerListener(this, sensorManager.getDefaultSensor(Sensor.TYPE_LIGHT), SensorManager.SENSOR_DELAY_GAME); } @Override protected void onPause() { super.onPause(); sensorManager.unregisterListener(this); } //当传感器的值,发生变化时,回调的方法 @Override public void onSensorChanged(SensorEvent event) { //获取传感器的值 float[] values= event.values; //获取传感器类型 int sensorType = event.sensor.getType(); StringBuilder stringBuilder = null; if (sensorType==Sensor.TYPE_LIGHT){ stringBuilder = new StringBuilder(); stringBuilder.append("光的强度值:"); //添加获取的传感器的值 stringBuilder.append(values[0]); editText.setText(stringBuilder.toString()); } } //当传感器的精度,发生变化时,回调的方法 @Override public void onAccuracyChanged(Sensor sensor, int accuracy) { } }
效果如图所示:
以上是光线传感器的简单使用。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持码农之家。