[Android翻译]Lottie for Jetpack Compose

561 阅读3分钟

原文地址:gpeal.medium.com/lottie-for-…

原文作者:gpeal.medium.com/

发布时间:2020年11月18日-3分钟阅读

当我们在2017年发布Lottie 1.0时,它只是从其黑客马拉松的根源中迈出了几步婴儿。从那时起,Lottie已经发展成为一个成熟的库,成为在任何平台上实现美丽动画的行业标准。Lottie for Android刚刚在GitHub上突破了3万颗星,并在数十亿台设备上的数万个应用中使用。伴随着这种普及,Lottie也有责任可靠地工作,并随着Android社区的发展而适应。

Android世界的下一个重要篇章将围绕Jetpack Compose展开。Jetpack Compose是对Android应用程序编写方式的基本重新架构。它是现代的,建立在ReactSwiftUIFlutter和其他功能反应框架的成功基础上,并且建立在Kotlin之上。毫无疑问,用不了多久,所有的Android应用都会用Jetpack Compose来编写。

Lottie Compose Alpha

为了迎接这一重大转变,我已经开始了Lottie Compose的工作,并在今天发布了早期预览版。

在Jetpack Compose中使用Lottie就像以前一样简单。这是最简单的显示动画的方式。

@Composable
fun Loader() {
    val animationSpec = remember { LottieAnimationSpec.RawRes(R.raw.loader) }
    LottieAnimation(
        animationSpec,
        modifier = Modifier.preferredSize(100.dp)
    )
}

就像Lottie Android一样,Lottie Compose允许你手动控制动画,调整其速度等。你可以在这里查看更多的例子和进一步的文档。Lottie Compose是建立在现有的Android渲染器之上的,因此它完全向后兼容目前可以使用的动画。在未来,渲染器可能会完全使用Compose vector APIs重写。

尽早发布处于alpha状态的Lottie Compose对其成功非常重要。Compose的API还没有准备好,而且还在继续发展。此外,作为一个社区,我们仍在学习为 Compose 世界设计 API 的最佳方法。在Lottie Compose Alpha中发布的API还不是最终版本,我欢迎所有的反馈意见,以帮助引导它们朝着更好的方向发展。

今天就来试试吧。

dependencies {
  implementation 'com.airbnb.android:lottie-compose:1.0.0-alpha02'
}

Lottie Android 3.5

除了Lottie Compose Alpha,我还发布了Lottie Android 3.5.0。这个版本包含了一些便利的功能,包括: 1:

  • 一个新的全局配置,可以提供你自己的网络堆栈或记录器。
  • 一个用于调试目的的API,可以勾勒出掩码和遮罩。大面积的蒙板和遮罩是动画效果不佳的首要原因。
  • 支持 dotLottie 文件。
  • 支持暂停监听器

您可以提供的帮助

构建Lottie需要花费大量的时间和精力。Lottie需要管理GitHub上的问题和功能请求,实际解决这些问题,构建和测试新功能,与有大量Lottie集成的公司合作,并开始新的项目,如Lottie Compose。如果你使用Lottie,你可以通过以下几种方式来帮助我们。

帮助塑造Lottie Compose

如果你试用了Lottie Compose,并有改进的想法,请在GitHub上提交一个问题,或者在Twitter上联系我。

为项目做贡献

在任何时候,都有少量的公开问题。欢迎在其中一个问题上工作,并直接发布一个PR。

在Open Collective或GitHub上赞助Lottie

Lottie也是Open Collective的一员,你可以在这里了解更多关于Lottie的Open Collective页面和Airbnb的参与情况。你可以在这里阅读更多关于Lottie的Open Collective页面和Airbnb的参与。

Lottie可以在GitHub赞助商上使用。要赞助这个项目,请点击回帖顶部的赞助按钮。您的赞助将为Lottie在日常工作之外的工作做出贡献(全部)。


通过www.DeepL.com/Translator (免费版)翻译