以下是指南针通过方向传感器而旋转实现。

CompassDemo.java:

package com.example.activity;import android.app.Activity;import android.hardware.Sensor;import android.hardware.SensorEvent;import android.hardware.SensorEventListener;import android.hardware.SensorManager;import android.os.Bundle;import android.view.animation.Animation;import android.view.animation.RotateAnimation;import android.widget.ImageView;public class CompassDemo extends Activity implements SensorEventListener {private ImageView imageView;SensorManager mSensorManager;private float currentDegree=0f;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.compass);imageView=(ImageView)findViewById(R.id.znzImage);mSensorManager=(SensorManager)getSystemService(SENSOR_SERVICE);}@Overrideprotected void onResume() {mSensorManager.registerListener(this,mSensorManager.getDefaultSensor(Sensor.TYPE_ORIENTATION), SensorManager.SENSOR_DELAY_GAME);super.onResume();}@Overrideprotected void onPause() {mSensorManager.unregisterListener(this);super.onPause();}@Overrideprotected void onStop() {mSensorManager.unregisterListener(this);super.onStop();}@Overridepublic void onAccuracyChanged(Sensor arg0, int arg1) {}@Overridepublic void onSensorChanged(SensorEvent event) {int sensortype=event.sensor.getType();switch(sensortype){case Sensor.TYPE_ORIENTATION:float degree=event.values[0];RotateAnimation ra=new RotateAnimation(currentDegree,-degree,Animation.RELATIVE_TO_SELF,0.5f,Animation.RELATIVE_TO_SELF,0.5f);ra.setDuration(200);imageView.startAnimation(ra);currentDegree=-degree;break;}}}


compass.xml:

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:orientation="vertical"android:layout_width="fill_parent"android:layout_height="fill_parent"android:background="#fff"><ImageViewandroid:id="@+id/znzImage"android:layout_width="fill_parent"android:layout_height="fill_parent"android:scaleType="fitCenter"android:src="@drawable/znz" /></LinearLayout>


在这里给大家分享一下指南针图片znz:

android 传感器使用 Compass指南针的实现功能


更多相关文章

  1. Android传感器概述(七)
  2. Android开发笔记(五十九)巧用传感器
  3. CyanogenMod 7 再把 Touchpad 的改造标竿推高,支持 WiFi、Market
  4. Android传感器融合
  5. Android传感器的使用总结
  6. android中传感器的应用
  7. Android P九轴传感器数据读取

随机推荐

  1. Android中gravity与layout_gravity的区别
  2. Android(安卓)核心分析 之八------Androi
  3. Android(安卓)核心分析 之八------Androi
  4. android手动拖动滚动条快速滑动
  5. Android原生(Native)C开发
  6. 安卓学习教程
  7. Android窗口机制
  8. Android学习笔记——入门框
  9. Failed to find an AVD compatible with
  10. Android(安卓)Studio导入项目常出现的问