【问题标题】:Jetpack Compose Lottie Dynamic Text and ImageJetpack Compose Lottie 动态文本和图像
【发布时间】:2021-09-22 13:41:08
【问题描述】:

我有一个与 LottieAnimation 一起使用的 json 动画,但我的功能需要我在运行时更改动画中的文本和图像。

动画是一个像讲台一样的排名。然后从后端加载动画获胜者文本和图像。所以我需要设置这些值。

现在我知道 TextDelegate 可以处理 Text 问题,但它只适用于 View,因为它是旧方法。它需要构造函数中的视图。我找不到使用 Compose 执行此操作的方法。关于图像,我没有胶水。

有人可以帮我吗?

【问题讨论】:

    标签: android android-jetpack-compose lottie


    【解决方案1】:

    根据您的json 文件结构,您有两种设置图像的方法

    1. 将使用过的图像放入src/main/assets/lottieImages。名称应与 json 文件中提及的名称相同,在我的情况下为 img_0.png
    val composition by rememberLottieComposition(
        LottieCompositionSpec.RawRes(R.raw.we_accept),
        imageAssetsFolder = "lottieImages"
    )
    
    1. 为关键路径设置位图,就像我从资源中获取它一样,使用动态属性
    val bitmap = remember {
        BitmapFactory.decodeResource(context.resources, R.drawable.my_image)
    }
    val dynamicProperties = rememberLottieDynamicProperties(
        rememberLottieDynamicProperty(LottieProperty.IMAGE, bitmap, "weaccept.jpg"),
    )
    LottieAnimation(
        composition,
        dynamicProperties = dynamicProperties
    )
    

    我使用this json 作为示例动画。

    至于文字,LottieTextDelegate好像没有移植到compose,建议你creategithub上一个功能请求。

    【讨论】:

      猜你喜欢
      • 2022-09-29
      • 1970-01-01
      • 1970-01-01
      • 2020-12-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多