watch-3D.app开发经验(1)

来源:互联网 发布:亨德尔 水上音乐 知乎 编辑:程序博客网 时间:2024/05/17 04:55
watch-3D,开发遇到的主要几个问题和解决方案:

一、如何实现左右眼两个imageview随着sensor的改变而改变
    1、先要实现有两个布局存放变化的两个图像,这时候我使用了addContentView的方法,用layoutParams去配置这两个View之间的参数,使一个在左一个在右,分别在屏幕的一半。
    2、再解决图像怎么随着sensor改变,这时候我定义了一个继承imageView的类,类中重写了onDraw的方法,把画图的参数通过sensor的变化得到,这样每一次onSensorChanged时候imageView就会重新绘画一遍,从而实现了第一个问题

二、实现了第一个初步效果后,因为从sensor得到的数据变化非常快,所以会出现手机尽管平放着,也会出现图片变化的效果,我称之为抖动,这是我们要解决的第二个问题:图像静止时抖动问题。
    1、最开始的解决方案很简单,改变sensormanage中的sensor_delay,改的慢一点不就不会了么,发现失败,后来想设定一个值,如果改变的量没有超过这个值就行,但是会出现跳帧的现象,而且这个值需要大量的测试才能得出。
    2、这时候我想到了滤波这个词,感觉这个防抖动就和滤波有异曲同工之妙,网上进行搜索,果然有消抖滤波法,看懂后进行试验,发现效果不错
0 0