我遇到了以下问题:想象一下屏幕中央的框架,就像大多数照片应用程序一样。移动或倾斜设备时,框架应留下如下图所示的痕迹(不是很好的示例,但我找不到更好的一个):
在当前的实现中,我获得了大于某个阈值的加速度计数据,并在Canvas上发布了Runnable to Handler的动画跟踪。这种实施是否有陷阱?或者有更好的方法来实现这样的功能吗?
答案 0 :(得分:3)
我认为您希望实现这两个功能,以便在您的议案中获得更好的整体体验:
您有一个班级,每隔 t 时间监控加速度计数据。而不是直接测量会影响您的对象,而是使用 n * t 次的平均值。因此,每个新测量值都会添加到滚动平均值中,而一个不良测量值对您的行为影响较小。
实施加速功能可让您的用户获得更好的加速度计以获得运动体验。 This是关于如何在您的动作中实现运动方程的好文章。
之后,您使用的确切实施将取决于很多事情,即您的资产和这些资产的使用情况。将Runnable发布到处理程序本身并不是一个糟糕的IPC,但如果没有看到你的代码,我们就无法告诉你更多。