我想用一组图像创建一个逐帧动画。
有设置animationDuration
,标准值为1。
当我开始动画时,我可以确定每个 iOS 设备上的帧率始终为 30fpsstartAnimating
吗?
所以我需要 15 张图像来制作 1 秒的动画 - 当我有超过或少于 15 张必须在一秒钟内制作动画的图像时,我可以使用特殊计算吗?
例如 60/15*(数组中的图像计数)
我想用一组图像创建一个逐帧动画。
有设置animationDuration
,标准值为1。
当我开始动画时,我可以确定每个 iOS 设备上的帧率始终为 30fpsstartAnimating
吗?
所以我需要 15 张图像来制作 1 秒的动画 - 当我有超过或少于 15 张必须在一秒钟内制作动画的图像时,我可以使用特殊计算吗?
例如 60/15*(数组中的图像计数)
我认为您不能指望UIImageView
animationImages
随时随地为您提供 30FPS。
实际上,这适用于非常简单和“机会主义”的动画。如果您搜索它,您会发现该方法占用设备的报告(在特定条件下)。另一方面,如果您的图像很小,那么它可能会起作用,但您无法得到任何保证(也无法强制执行所需的 FPS)。
所以我需要 15 张图像来制作 1 秒的动画 - 当我有超过或少于 15 张必须在一秒钟内制作动画的图像时,我可以使用特殊计算吗?
如果我正确理解您的问题,那么您可以尝试:
duration = number_of_images / FPS; // e.g., 60 images / 30 FPS = 2 seconds
当然,如果设备能够以 30 FPS 正确显示 60 张图像,那就另当别论了。