weixin_39946767
weixin_39946767
2021-01-09 10:41

GIF图片单次动画时间获取

怎么获取GIF图片单次动画时间呢?

该提问来源于开源项目:ibireme/YYWebImage

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

8条回答

  • a1178752402 恋爱的七宝 1月前

    大爷的,这是多少年前的提问,居然搬到这里来了

    点赞 评论 复制链接分享
  • weixin_39946767 weixin_39946767 3月前

    b7673d83-8f48-401b-a6ff-b8b02028f4ff da7cdd99-aad6-4911-ad7b-7cdedb3e8163 6f88641d-a2aa-4f74-a435-a0cb868db141 我发现我在使用图片下载类的时候,我在用这个图片下载类的时候,对于延迟调用,如果不在主线程中执行,则取消延迟调用方法无效。这个,,,我一朋友给我的解释是“你在哪个run loop中perfect。就有在那个run loop中取消。”而使用SD的图片下载方法则不会存在这个问题。不知这个对你这边有没有帮助。

    点赞 评论 复制链接分享
  • weixin_39632293 weixin_39632293 3月前

    抱歉我不太用 QQ。。

    performSelector:after 这个你应该了解一下它与 runloop 的关系,如果调用线程没有 runloop 那它是不会执行的,所以你应该注意调用线程。 YYImageRequest 那个回调是在后台线程进行的,这个在注释里有说明。

    点赞 评论 复制链接分享
  • weixin_39946767 weixin_39946767 3月前

    明白了

    点赞 评论 复制链接分享
  • weixin_39946767 weixin_39946767 3月前

    eab25f4e-27a1-4541-b69c-3b84bab70720 这样的话,,,我要获取总的帧数,得循环累加了。不知道大哥还有没有更好获取GIF在执行一次动画周期内的时间方法。

    点赞 评论 复制链接分享
  • weixin_39632293 weixin_39632293 3月前

    这个。。因为总时长在 YYAnimatedImage 协议中不是必须的,所以这里并没有放到协议里。另外在播放动画时,如果出现卡顿或其它延迟情况,这个总时间是不准的,这个接口就没必要暴露出来了。

    如果需要的话,建议写个 category 吧~

    点赞 评论 复制链接分享
  • weixin_39946767 weixin_39946767 3月前

    有道理。大哥QQ多少?我想加你,这样技术交流沟通也比较方便。大哥的QQ群也行,能拉我吗?我QQ1178752402

    点赞 评论 复制链接分享
  • weixin_39632293 weixin_39632293 3月前

    YYImage 实现了 YYAnimatedImage 协议,其中 animatedImageFrameCount 是总帧数,animatedImageDurationAtIndex 是每帧的时长。

    点赞 评论 复制链接分享