• Android 摇一摇功能的注意事项


    /**开始重力传感器的检测*/
    public void start() {
      // 获得传感器管理器
      sensorManager = (SensorManager) mContext.getSystemService(Context.SENSOR_SERVICE);
      if (sensorManager != null) {
        // 获得重力传感器
        sensor = sensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
      }
      // 注册
      if (sensor != null) {
        sensorManager.registerListener(this, sensor, SensorManager.SENSOR_DELAY_GAME);
      }
    }
    
    /**停止检测*/ 
    public void stop() {
      sensorManager.unregisterListener(this);
    }

    1.  注意如果你想重复的在一个页面不停的摇,如果你 start() --> 监听到传感器触发事件  只能摇一次(如果你不选择stop() 他还是只能摇一次,继续摇就摇不了了)想要继续摇必须再次启动 start()方法 再次stop() 做循环来重复摇,这是最重要的。

      例如:1. start() --> 触发事件 --> stop();   只能摇一次

         2. start() --> 触发事件;     不执行stop() 只能摇一次

         3. start() --> 触发事件完立马执行stop() -->start() --> 触发事件完立马执行stop() --> start() ....... 这样就可以无限的执行摇一摇功能了  

     不知道是不是我写的代码有误还是怎么的,我在代码中想要执行多次监听摇一摇就必须按照 例3这种方式 如果有人知道原因,请在下方留言,希望学习一下

  • 相关阅读:
    如何用vue实现树形菜单?
    spring+springMVC,声明式事务失效,原因以及解决办法
    java提高同步锁的几点建议
    java自定义before和after
    java线程池
    jdk并发工具包之锁
    ReentrentLock重入锁
    java守护线程
    ReentrantLock
    java多线程基础
  • 原文地址:https://www.cnblogs.com/woaixingxing/p/5994722.html
Copyright © 2020-2023  润新知