我应该如何每秒调用 Android 视图的 onDraw() 方法 30 次
对于 Android,我有一个自定义视图,我在 onDraw() 方法中用原始形状填充该视图。
来自处理背景,我预计绘制方法每秒自动调用 30 次,但很明显这不是 android 视图的工作方式。
那么我应该如何每秒调用这个方法 30 次呢?
For Android, I have a custom view which I fill up with primitive shapes in the onDraw() method.
Coming from a Processing background, I expected the draw method to be called automatically 30 times per second, but its clear that that's not how android views work.
So how should I go about calling this method 30 times per second?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
使用 动画,并调用 startAnimation() 。
我不知道您可以设置目标帧速率 - 相反,您应该及时设置开始点和结束点,并能够在两者之间的任何时间点进行插值。
如果您不喜欢这种方法,您可以考虑使用另一个线程定期调用
view.postInvalidate()
来请求重绘您的View
。Use an Animation, and call startAnimation() on it from your View.
I don't know that you can set a target framerate -- rather, you're expected to set start and end points in time, and be able to interpolate for any point in time between the two.
If you don't like this approach, you might consider having another thread which periodically calls
view.postInvalidate()
to request that yourView
be redrawn.