Android光线传感器使用方法详解
更新时间:2022年09月20日 08:56:12 作者:路宇
这篇文章主要为大家详细介绍了Android光线传感器的使用方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了Android光线传感器使用的具体代码,供大家参考,具体内容如下
一、首先是布局页面activity_light_sensor.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context=".LightSensorActivity"> <TextView android:id="@+id/textView" android:layout_width="match_parent" android:layout_height="60dp" android:gravity="center" android:text="光线传感器" android:textColor="@color/black" android:textSize="20sp" /> <EditText android:id="@+id/editText" android:layout_width="match_parent" android:layout_height="wrap_content" /> </LinearLayout>
二、在对应的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) { } }
效果如图所示:
以上是光线传感器的简单使用。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
相关文章
Android Activity通用悬浮可拖拽View封装的思路详解
这篇文章主要介绍了Android Activity通用悬浮可拖拽View封装,实现思路是通过封装通用的基础悬浮View,继承通用View,本文通过实例代码给大家介绍的非常详细,需要的朋友可以参考下2022-07-07Android JSON数据与实体类之间的相互转化(GSON的用法)
这篇文章主要介绍了Android JSON数据与实体类之间的相互转化(GSON的用法),非常具有实用价值,需要的朋友可以参考下。2017-01-01Android实现动态向Gallery中添加图片及倒影与3D效果示例
这篇文章主要介绍了Android实现动态向Gallery中添加图片及倒影与3D效果的方法,涉及Android针对图片的加载、显示、翻转、倒影等相关特效功能实现技巧2016-08-08Android GridView 滑动条设置一直显示状态(推荐)
这篇文章主要介绍了Android GridView 滑动条设置一直显示状态的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下2016-12-12
最新评论