【Android日常--- Lottie 3.*动画播放异常--异步加载资源】

结论:

  • LottieAnimationView setAnimation在 2.*是同步加载的 json、图片资源, 3.*采用的异步加载。而且是强制的
  • 采用LottieDrawable 配合ImageView, 可以自主选择 加载方式

代码

重点代码
LottieCompositionFactory.fromAssetSync
同步加载资源
    private var mPetLottieDrawable = LottieDrawable()

    fun init(rootView: View, callback: GuideCallback?) {
        outerGuideCallback = callback

        guideContainerView = rootView.findViewById(R.id.camera_guide_container)
        guideText = rootView.findViewById(R.id.camera_guide_text)

        mPetLottieDrawable.setImagesAssetsFolder("pic_camera_normal")
        mPetLottieDrawable.repeatCount = 0
        }

    private fun updateViewAnimation(view: View,  type: Int, context: Context) {
        jsonMap[type]?.also {json ->
            if (mPetLottieDrawable.isAnimating) {
                mPetLottieDrawable.cancelAnimation()
            }
            mPetLottieDrawable.clearComposition()
            LottieCompositionFactory.fromAssetSync(context, json).value?.let {composite ->
                mPetLottieDrawable.composition = composite
                mPetLottieDrawable.playAnimation();
                view.visibility = View.VISIBLE
            }
        }
    }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值