《iOS 6高级开发手册(第4版)》——1.8节使用加速度移动屏幕上的对象
本节书摘来自异步社区《iOS 6高级开发手册(第4版)》一书中的第1章,第1.8节使用加速度移动屏幕上的对象,作者 【美】Erica Sadun,更多章节内容可以访问云栖社区“异步社区”公众号查看 1.8 使用加速度移动屏幕上的对象iOS 6高级开发手册(第4版)借助一点编程工作,iPhone的机载加速计就可以使对象在屏幕上四处“移动”,实时响应用户倾斜手机的方式。秘诀1-4创建了一只动画式的蝴蝶,用户可以使之快速移过屏幕。 使之工作的秘密在于:向程序中添加一个所谓的“物理计时器”。它不是直接响应加速中的变化,而是像秘诀1-3所做的那样,加速计回调用于测量当前的力。它取决于计时器例程随着时间的推移通过改变它的画面对蝴蝶应用那些力。下面列出了一些要记住的关键点。 只要力的方向仍然保持相同,蝴蝶就会加速。它的速度会依据加速力在x或y方向上的量度成比例地提高。由计时器调用的tick例程将通过向蝴蝶的原点添加速度向量来移动蝴蝶。蝴蝶移动的范围是有界限的。因此,当它撞到某个边缘时,将会停止在那个方向上移动。这可以一直把蝴蝶保留在屏幕上。tick方法将会检查界限条件。例如,如果蝴蝶撞到垂直边缘,那...