zoukankan      html  css  js  c++  java
  • android开发(28) 做个 指南针 应用

    参考网上的资料,做了个指南针应用玩玩。

    步骤:

    1.获得 SensorManager。

      mSensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);  

    2.注册监听器

     mSensorManager.registerListener(mSensorEventListener,  
                    mSensorManager.getDefaultSensor(Sensor.TYPE_ORIENTATION),  
                    SensorManager.SENSOR_DELAY_GAME);  

    3.实现监听器

    SensorEventListener mSensorEventListener = new SensorEventListener() {
            
            @Override
            public void onSensorChanged(SensorEvent event) {
                // 获取绕Z轴转过的角度  
                float degree = event.values[0];  
                // 创建旋转动画(反向转过degree度)  
                RotateAnimation ra = new RotateAnimation(currentDegree, -degree,  
                        Animation.RELATIVE_TO_SELF, 0.5f,  
                        Animation.RELATIVE_TO_SELF, 0.5f);  
                // 设置动画的持续时间  
                ra.setDuration(200);  
                // 设置动画结束后的保留状态  
                ra.setFillAfter(true);  
                // 启动动画  
                image.startAnimation(ra);  
                currentDegree = -degree; 
            }
            
            @Override
            public void onAccuracyChanged(Sensor sensor, int accuracy) {
                // TODO Auto-generated method stub
                
            }
        };

    4.释放资源,取消注册监听器

      // 取消注册
      mSensorManager.unregisterListener(mSensorEventListener);

    -----------------

    代码下载

    参考:

    http://blog.csdn.net/u010142437/article/details/9387181
    http://blog.csdn.net/wang6279026/article/details/8231755

  • 相关阅读:
    hdu4651(广义五边形数 & 分割函数1)
    Java基础面试题1
    Java8新特性--Lambda表达式
    Java中list在循环中删除元素的坑
    Java多线程面试题整理
    Java并发包--ConcurrentHashMap原理解析
    HashMap原理解析
    Java原子类--AtomicLongFieldUpdater
    Java原子类--AtomicReference
    Java原子类--AtomicLongArray
  • 原文地址:https://www.cnblogs.com/vir56k/p/3338782.html
Copyright © 2011-2022 走看看