作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是安卓开发的新手。我正在创建一个简单的应用程序,只要传感器发生变化,它就会移动位图。我正在使用传感器 TYPE_ACCELEROMETER但问题是它移动位图太快,即使传感器有轻微变化,位图也会在一个地方摇晃。我只想延迟 onSensorChange 返回值请帮助我这是我的 SensorManager 代码
public Can(Context context) {
// TODO Auto-generated constructor stub
super(context);
ourHolder = getHolder();
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
wl = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK, "hi");
sm = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
if (sm.getSensorList(Sensor.TYPE_ACCELEROMETER).size() != 0) {
Sensor s = sm.getSensorList(Sensor.TYPE_ACCELEROMETER).get(0);
sm.registerListener(this, s, SensorManager.SENSOR_DELAY_GAME);
}
ball = BitmapFactory
.decodeResource(getResources(), R.drawable.ball);
test = BitmapFactory.decodeResource(getResources(),
R.drawable.ic_launcher);
ClockStart = (float) System.currentTimeMillis();
ballwidth = ball.getWidth();
ballheight = ball.getHeight();
}
这里是 onSensorChange 的作用
public void onSensorChanged(SensorEvent event) {
// TODO Auto-generated method stub
try {
Thread.sleep(16);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
sensorY = event.values[0];
sensorX = event.values[1];
}
任何帮助将不胜感激
最佳答案
那绝对不是你想做的。事实上,它会造成很大的问题。如果您绘制得太频繁,您要做的是跳过对 onSensorChanged 的一些调用。如果您对太小的震动使用react,您只需在变化大于一定量时设置 sensorY 和 sensorX。
顺便说一句,加速度计很吵。即使放在平坦稳定的表面上,它也会跳来跳去。您需要预料到会发生这种情况。
关于android - 如何在 Android 中延迟 onSensorChange,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22496489/
我是一名优秀的程序员,十分优秀!