项目结构
核心代码:
activity_main.xml
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >
android:id="@ id/light_level"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:textSize="20sp"
/>
MainActivity
/**
*
* 本项目光强检测数据发生变化
*
*/
public class MainActivity extends Activity {
private SensorManager sensorManager;
private TextView lightLevel;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
lightLevel=(TextView) findViewById(R.id.light_level);
////所有传感器的管理器
sensorManager=(SensorManager) getSystemService(Context.SENSOR_SERVICE);
///在这里使用任何传感器的对象Sensor.TYPE_LIGHT得到的是光传感器
Sensor sensor = sensorManager.getDefaultSensor(Sensor.TYPE_LIGHT);
///注册监控//第三个参数传感器输出信息的更新率依次增加
//SensorManager.SENSOR_DELAY_UI
//SENSOR_DELAY_NORMAL
//SENSOR_DELAY_GAME
//SENSOR_DELAY_FASTEST
sensorManager.registerListener(listener, sensor, SensorManager.SENSOR_DELAY_NORMAL);
}
@Override
protected void onDestroy() {
super.onDestroy();
if (sensorManager!=null) {
///释放资源
sensorManager.unregisterListener(listener);
}
}
/**
* 监听传感器输入信号
*
*/
private SensorEventListener listener= new SensorEventListener() {
///当传感器检测到数值变化时,调用
@Override
public void onSensorChanged(SensorEvent event) {
float value = event.values[0];
lightLevel.setText("光强值为" value "lx");
}
//当传感器精度发生变化时,哈哈hi调用
@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {
}
};
}//class
我不明白下载我的例子。