【问题标题】:React native iOS - splash screen using lottie file反应原生 iOS - 使用 lottie 文件的启动画面
【发布时间】:2021-07-29 17:42:06
【问题描述】:

在 React 本机应用程序中,我们尝试将 Lottie 动画加载为启动画面。

在 android 中,我可以通过为 android Lottie 库创建本机视图来实现它。 I want to play lottie animation in splash screen+ React native

我在 iOS 中也需要同样的功能,目前我们有一个图像闪屏,我们已经实现了 images.xcassets 和 LaunchScreen.storyboard(参考截图)

这里有没有可能使用 Lottie 动画来代替这些图像?

有一种解决方法,我可以在开始使用应用内容之前在 app.js 中添加 Lottie 动画。在这种情况下,首先是上面提到的闪屏和动画。如果我在此处删除此启动画面,则会出现白屏和动画。

如何在 iOS 上使用 Lottie 动画代替启动画面?

【问题讨论】:

    标签: react-native react-native-ios splash-screen lottie


    【解决方案1】:

    起初,我搜索了很多关于用lottie动画更改ios的LaunchScreen.storyboard的文章。但是,Xcode 强制 LaunchScreen.storyboard 应该是静态屏幕。所以,我在静态启动屏幕加载后插入了动画代码。也许,启动屏幕是必不可少的,因为它是 ios 中初始加载资源的加载屏幕。如果您删除启动屏幕,则 ios 应用程序在首次加载时会显示黑屏或白屏。移除启动屏幕,Xcode 7

    如果您在 react native 中寻找使用 lottie 的动画启动屏幕,我建议您查看这个包。

    https://www.npmjs.com/package/react-native-lottie-splash-screen

    它使用airbnb lottie文件实现动画启动画面。此外,我将它应用于多个反应原生项目并且效果很好。祝你有美好的一天!

    【讨论】:

    • 请不要简单地发布链接。如果你要引用一个 NPM 包,你应该通过代码说明它的作用以及它的作用,这将有助于回答这个问题。
    【解决方案2】:

    在 iOS 中,初始屏幕是一个视图 without any associated logic

    您可以做的就是让动画看起来像 Lottie 文件的第一帧。

    然后,在didFinishLaunchingWithOptions,你就可以开始你的Lottie动画了。

    在 RN 应用程序中,启动屏幕应该是快速闪烁,并且大部分启动时间将由 RN 设置占用。因此,即使使用这种方法,动画也应该相对流畅地显示出来。

    您可以查看this repo 了解他们是如何实现的。

    【讨论】:

      猜你喜欢
      • 2022-07-21
      • 1970-01-01
      • 2018-12-21
      • 1970-01-01
      • 2019-08-16
      • 1970-01-01
      • 2020-08-30
      • 2021-12-27
      • 2020-11-22
      相关资源
      最近更新 更多