最近做的项目要用到距离传感器,所以写下这篇文章记录下心得。
其实心得只有一点,看官方的说明文档真的灰常重要。完了。。
贴上代码:
~~~
package com.example.mysensor;
import android.hardware.Sensor;
import android.hardware.SensorEvent;
import android.hardware.SensorEventListener;
import android.hardware.SensorManager;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.app.Activity;
import android.view.Menu;
import android.widget.TextView;
public class MainActivity extends Activity {
private myListener listener;
private SensorManager sm;
private TextView tv;
private Sensor sensor;
private Handler handler = new Handler()
{
@Override
public void handleMessage ( android.os.Message msg)
{
float data = (Float)msg.obj;
String str = String.valueOf(data);
tv.setText(str);
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listener = new myListener();
tv = (TextView)this.findViewById(R.id.text);
new Thread(new myThread()).start();
}
private class myListener implements SensorEventListener
{
@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {
// TODO Auto-generated method stub
}
@Override
public void onSensorChanged(SensorEvent event) {
// TODO Auto-generated method stub
float value = event.values[0];
Message message = Message.obtain();
message.obj = value;
handler.sendMessage(message);
}
}
@Override
protected void onDestroy()
{
sm.unregisterListener(listener);
listener = null;
super.onDestroy();
}
private class myThread implements Runnable
{
@Override
public void run() {
// TODO Auto-generated method stub
sm = (SensorManager)getSystemService(SENSOR_SERVICE);
sensor = sm.getDefaultSensor(Sensor.TYPE_PROXIMITY);
sm.registerListener(listener, sensor, SensorManager.SENSOR_DELAY_GAME);
}
}
}
~~~
- 前言
- 安卓ListView一个简单代码的注释和探讨
- 安卓wifi热点编程代码的若干注释
- 安卓距离传感器编程
- 简单的ScrollView
- 简单的ListView
- 简单的ArrayAdapter
- AsyncTask的初步学习
- AsyncTask再度学习
- Handler初步学习
- 开启系统Activity
- 隐式调用Activity
- Activity的生命周期
- startActivityForResult的初步学习
- 多点触控拉伸图片
- LruCache图片缓存技术
- SQLiteOpenHelper数据库操作
- 短信拦截器
- 简单的Notification
- ListView优化以及checkbox状态问题
- 安卓多线程下载
- 安卓JSON解析初步探讨
- 选项卡样式的fragment
- DrawerLayout实现简单的侧滑功能
- 安卓软引用解决图片OOM问题
- 安卓隐式Intent启动Activity和BroadcastReceiver若干注意点
- Dialog学习笔记
- ActionBar使用