我正在尝试为我的应用生成与标准iPhone Compass应用类似的显示-具体来说,表盘旋转,但是注解(N,S,E,W和各种数字)在圈出时保持垂直周围。我现在有一个可以使用的应用程序版本,但是我不得不混用CGAffineTransforms来旋转表盘,然后手动将文本重新绘制到正确的位置。除了愚蠢和浪费之外,我不认为我可以在自己的方法中使用动画来平滑旋转。是否有标准的方法来做这种事情?我想我可以为环上的每个数字/字母生成一个唯一的仿射变换,但这似乎也很昂贵。我知道这是可以做到的,因为标准指南针应用程序就像他们所说的那样“像黄油一样光滑”。有什么想法吗?
我的应用当前具有一个视图,该视图首先绘制表盘的非文本部分。我使用CGAffineTransforms基于CLLocation的输入来旋转它。效果很好。我有第二个视图,该视图再次根据CLLocation标题重新绘制了罗盘刻度盘的所有文本部分。我可以为AffineTransforms设置动画,但不能重绘动画,因此更新要么不同步(表盘移动平稳,而文本更抖动),要么所有内容都抖动。
不适用
我希望能使用统一的绘画技术制作动画,这样我的指南针动画将与内置应用程序一样流畅。
答案 0 :(得分:0)
我想我明白了。对于那些有相同问题的人,这是一个简单的解决方案:
将所有内容包装在动画中,它将像丝绸一样平滑。
希望可以帮助某人...