1)压力传感器返回当前的压强,单位是百帕斯卡hectopascal(hPa)。

2)具体代码如下

package com.example.androidapp;import android.hardware.Sensor;import android.hardware.SensorEvent;import android.hardware.SensorEventListener;import android.hardware.SensorManager;import android.os.Bundle;import android.app.Activity;import android.view.Menu;import android.view.View;import android.widget.Button;import android.widget.TextView;public class MainActivity extends Activity {private SensorManager mSensorManager=null;private Sensor mSensor=null;private TextView textView1=null;private Button button1=null;private Button button2=null;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);textView1=(TextView)findViewById(R.id.textView1);/*获取系统服务(SENSOR_SERVICE)返回一个SensorManager对象*/mSensorManager=(SensorManager)getSystemService(SENSOR_SERVICE);/*通过SensorManager获取相应的(压力传感器)Sensor类型对象*/mSensor=mSensorManager.getDefaultSensor(Sensor.TYPE_PRESSURE);/*注册相应的SensorService*/button1=(Button)findViewById(R.id.button1);button1.setOnClickListener(new Button.OnClickListener() {@Overridepublic void onClick(View arg0) {mSensorManager.registerListener(mSensorEventListener, mSensor, SensorManager.SENSOR_DELAY_NORMAL);}});/* 销毁相应的SensorService * 很关键的部分,注意,说明文档中提到,即使Activity不可见的时候,感应器依然会继续工作 * 所以一定要关闭触发器,否则将消耗用户大量电量*/button2=(Button)findViewById(R.id.button2);button2.setOnClickListener(new Button.OnClickListener() {@Overridepublic void onClick(View v) {mSensorManager.unregisterListener(mSensorEventListener, mSensor);}});}/*声明一个SensorEventListener对象用于侦听Sensor事件,并重载onSensorChanged方法*/private final SensorEventListener mSensorEventListener=new SensorEventListener() {@Overridepublic void onSensorChanged(SensorEvent event) {if(event.sensor.getType()==Sensor.TYPE_PRESSURE){/*压力传感器返回当前的压强,单位是百帕斯卡hectopascal(hPa)。*/float pressure=event.values[0];textView1.setText(String.valueOf(pressure)+"hPa");}}@Overridepublic void onAccuracyChanged(Sensor sensor, int accuracy) {// TODO Auto-generated method stub}};@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.main, menu);return true;}}


更多相关文章

  1. 用Java 在 KSOAP中序列化复杂对象数组实体
  2. Android对象序列化存储
  3. Android TextView textSize 单位问题
  4. Android GreenDao 建表及 获取SessionDao对象 单例
  5. [Android问答] px、dp和sp,这些单位有什么区别?
  6. Android像素单位

随机推荐

  1. Android_adb详解
  2. android 数据存储
  3. 【转载】Android事件分发机制完全解析,带
  4. Android:关于Window少为人知的一面
  5. IT网站收藏
  6. android 判断是否由adb调试进入页面 或直
  7. Android短信管理
  8. android 权限大全
  9. Android(安卓)SlidingMenu例子运行报错的
  10. android的五大布局详解