gpt4 book ai didi

ios - 使用 drawRect : and UIPanGestureRecognizer 平滑动画

转载 作者:行者123 更新时间:2023-11-29 13:38:26 25 4
gpt4 key购买 nike

好的。我已经看到很多主题与我在这里尝试做的相似,但没有一个完全匹配。也许我的方法有点离谱。这是交易。

我正在为 drawRect: 中的 UIView 子类绘制图表。然后我使用 UIPanGestureRecognizer 将图表的偏移量(内部,不在 View 层次结构中)转换为右/左。这很好用,但我的问题是识别器的 Action 被触发的频率相对较低。具体来说,由此产​​生的平移比在 ScrollView 或表格 View 中更不稳定。特别是当我图表中的点数上升时。现在,我想做的并不是实际触发平移手势的 Action ,而是让计时器以每秒 30 次左右的速度触发,插入从平移触发时刻到当前时刻的偏移量。然而,这变得越来越复杂。

有人有建议吗?我真的应该只用 UIScrollView 来做这件事吗?我不想这样做的原因是数据可能在任何一个方向上都延伸很远,我不想一次绘制(或至少存储)整个路径,而只做当前的部分显示。我应该使用 CAShapeLayer 吗?在我再花一天时间研究这些可能性之前,我想要一些输入...

我们非常欢迎任何意见/经验。

最佳答案

所以,最后,我确实将这些东西放在了 UIScrollView 中。我必须做很多工作才能启动和运行它,复杂的部分是创建一系列将添加到 ScrollView 的 PANES。每个 Pane 都向委托(delegate)人询问它需要绘制的数据,然后将它们全部拼接在一起。幸运的是,一旦我将这些包含图表 Pane 的 ScrollView 放入 TableView 中,一切都很好。仍然没有解决缩放问题,但我已经看到这里的一些帖子应该使它相对微不足道。

这就是我最初问题的答案。不要试图在每一帧上平移和绘制,它会变得不稳定,并且没有一些真正的 hack,我找不到平滑它的好方法。 ScrollView 可以为您处理所有这些问题,只要您可以很好地 Split View即可。我想我本可以使用一个长远的观点,但当数据集变大时,我就有麻烦了。

不过现在我遇到了一个相关的问题——当屏幕外的图表滚动到 View 中时(它们在 UITableViewCells 中),在绘制新图表时会出现很大的问题。我想我会尝试将它们异步绘制到图像中,这样当新行滚动到 View 中时,我已经得到了图像。

关于ios - 使用 drawRect : and UIPanGestureRecognizer 平滑动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9912666/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com