颤振中的动态闪屏

问题描述 投票:0回答:2

我非常扑朔迷离,我尝试构建一个启动屏幕,等待构建一些小部件。是否有可能这样做,而不仅仅是设置随机的延迟时间以使启动屏幕出现?

非常感谢。

flutter splash-screen future
2个回答
1
投票

无法使用本机初始屏幕。但是您可以创建一个自定义屏幕。我假设您想通过http请求或类似的内容加载一些数据。您可以在自定义启动屏幕中加载数据,加载完成后,导航至所需的屏幕。

也来看看这个。 flare_splash_screen 3.0.1


0
投票

您必须以本机方式执行此操作。First for Android(因为是我最喜欢的平台:))

  1. 在Flutter项目中找到“ android”文件夹。
  2. 浏览到应用程序-> src-> main-> res文件夹,并将品牌形象的所有变体放置在相应的文件夹中。例如:

    • 需要将密度为1的图像放置在mipmap-mdpi中,
    • 需要将密度为1.5的图像放置在mipmap-hdpi中,
    • 需要将密度为2的图像放置在mipmap-xdpi中,
    • 需要将密度为3的图像放置在mipmap-xxdpi中,
    • 需要将密度为4的图像放置在mipmap-xxxdpi中,

默认情况下,android文件夹中没有drawable-mdpi,drawable-hdpi等,但是每个人都可以创造自己的意愿。这就是为什么图像需要放置在mipmap文件夹中的原因。另外,有关启动屏幕的默认XML代码(在Android中)将在@mipmap中进行查看,而不是在@drawable中进行查看(如果需要,可以更改它)。

  1. Android的最后一步是取消注释drawable / launch_background.xml。浏览到应用-> src-> main-> res->可绘制并打开launch_background.xml。在此文件中,您将了解为什么Slash屏幕背景为白色。申请品牌我们在第2步中放置的图片,我们必须取消注释其中的一些您的launch_background.xml文件中的XML代码,因此更改后代码应如下所示:

    <bitmap
        android:gravity="center"
        android:src="@mipmap/your_image_name" />
    

[请注意,我们注释了白色背景代码,并取消了有关mipmap图像的代码注释。如果有人感兴趣,可以在styles.xml文件中使用这个launch_background.xml。

现在适用于iOS:

  • 在Flutter项目中找到“ ios”文件夹。
  • 浏览到运行器-> Assets.xcassets-> LaunchImage.imageset。应该有LaunchImage.png,LaunchImage @ 2x.png等。现在您必须用品牌图像变体替换这些图像。例如:
  • 密度为1的图像需要覆盖LaunchImage.png,
  • 密度为2的图像需要覆盖[email protected]
  • 密度为3的图像需要覆盖[email protected]
  • 密度为4的图像需要覆盖[email protected],如果我没有记错的话,LaunchImage @ 4x.png默认情况下不存在,但是您可以轻松创建一个。如果[email protected]不存在,则还必须在Contents.json文件中声明它,该文件与图像位于同一目录中。更改后,我的Contents.json文件如下所示:

    {“图片” : [{“ idiom”:“通用”,“ filename”:“ LaunchImage.png”,“ scale”:“ 1x”},{“ idiom”:“通用”,“ filename”:“ [email protected]”,“ scale”:“ 2x”},{“ idiom”:“通用”,“ filename”:“ [email protected]”,“ scale”:“ 3x”},{“ idiom”:“通用”,“ filename”:“ [email protected]”,“ scale”:“ 4x”}],“信息”:{“版本”:1“ author”:“ xcode”}}

这应该是全部。下次当您在Android和iOS上运行您的应用程序时,您应该拥有带有添加的品牌形象的正确的启动画面。

无论如何如果使用flutter create创建了项目,则最好看看此文档:https://flutter.dev/docs/development/ui/assets-and-images#updating-the-launch-screen

© www.soinside.com 2019 - 2024. All rights reserved.