Android加速度感應器
Android加速度感應器
手機平放案頭的兩張截屏,資料一直在重新整理
源碼
(Android Studio工程):http://download.csdn.net/detail/q4878802/9065313
步驟
感應器使用步驟之前已經介紹過,地址:http://blog.csdn.net/q4878802/article/details/48112477
代碼
package com.example.kongqw.kqwsensorforaccelerometerdemo;import android.app.Activity;import android.content.Context;import android.hardware.Sensor;import android.hardware.SensorEvent;import android.hardware.SensorEventListener;import android.hardware.SensorManager;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.Menu;import android.view.MenuItem;import android.view.View;import android.widget.TextView;public class MainActivity extends Activity implements SensorEventListener { private TextView mTvShow; private SensorManager mSensorManager; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mTvShow = (TextView) findViewById(R.id.tv_show); // 擷取感應器管理者對象 mSensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE); // 擷取加速度感應器對象 Sensor sensor = mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER); // 添加監聽器 mSensorManager.registerListener(this, sensor, SensorManager.SENSOR_DELAY_UI); } @Override public void onSensorChanged(SensorEvent event) { // 感應器返回的資料 float[] values = event.values; StringBuffer buffer = new StringBuffer(); buffer.append(X方向的加速度為:).append(values[0]).append(); buffer.append(Y方向的加速度為:).append(values[1]).append(); buffer.append(Z方向的加速度為:).append(values[2]).append(); mTvShow.setText(buffer); } @Override public void onAccuracyChanged(Sensor sensor, int accuracy) { }}
XML頁面配置