lottie 动态替换json文件里的文字

243 阅读1分钟

 //MARK: 替换json文件里的文字

class LottieCustomTextProvider: LegacyAnimationTextProvider {

///修改的文案

var titleStr: String=""

///需要替换的文案

var needModifyTextStr:String = ""

public func textFor(keypathName: String, sourceText: String) -> String {

if needModifyTextStr == keypathName{

return self.titleStr

}

return sourceText

}

public init(titleStr: String,needModifyTextStr:String) {

self.titleStr = titleStr

self.needModifyTextStr = needModifyTextStr

}

}

使用

private var animationView: LottieAnimationView!

  // 加载 Lottie 动画

animationView = LottieAnimationView(name: "hehe")

animationView.frame = CGRect(x: 50, y: 100, width: 200, height: 200)

view.addSubview(animationView)

// 动态修改文字

let textPro = LottieCustomTextProvider.init(titleStr: "下班时间到", needModifyTextStr: "Time is short")

animationView.textProvider=textPro

// 播放动画

animationView.play()