• 赚钱入口【需求资源】限时招募流量主、渠道主,站长合作;【合作模式】CPS长期分成,一次推广永久有收益。主动打款,不扣量;

如何在 Flutter 中创建启动画面?

Flutter cps12345 1年前 (2020-06-22) 934次浏览 0个评论
如何在 Flutter 中创建启动画面?

如何在 Flutter 中创建启动画面

Flutter Splash Demo的创建旨在帮我们了解如何为Android和iOS创建不同类型的Splash。

正如大多数iOS开发人员的同感,由于操作系统的特定限制,创建 iOS Splash可能会有些麻烦,另一方面,创建Android Splash仅仅是小菜一碟。现在,随着 Flutter 的出现,这种情况大有改善。

 

The Problem Statement

要创建一个展示不同类型的启动页的应用,即:

  1. 图片启动页
  2. 视频启动页
  3. 动画启动页

导入图像/视频文件

如何在 Flutter 中创建启动画面?

我们需要将图像文件导入到项目中。通常的做法是将图像文件放在Flutter项目根目录下的图像或资源文件夹中。由于必须同时使用图像和视频,因此我们创建了单独的文件夹,并将其添加到资产文件夹中。

 

在pubspec.yaml中声明

如何在 Flutter 中创建启动画面?

必须将资源文件添加到pubspec.yaml文件中。您可以通过此链接查看有关添加资源的更多信息  。

 

编码

我们看一下main.dart文件

如何在 Flutter 中创建启动画面?

我们使用了称为  Routes的名称,它用于路由,或者您可以说导航到应用程序的不同屏幕。

因此,我们创建了4条命名路线,即HOME_SCREEN,VIDEO_SPLASH,IMAGE_SPLASH,ANIMATED_SPLASH,这些路由将用于导航至演示应用程序的不同页面。

 

VideoSplashScreen.dart类别

如何在 Flutter 中创建启动画面?

VideoSplashScreen扩展了StatefulWidget,因为我们需要在运行时更改其状态,因此我们需要一个StatefulWidget。

 

VideoState类

VideoState类扩展了VideoSplashScreen类。它包含显示视频并移至下一个屏幕的整个逻辑。让我们看一下该类中使用的一些重要方法。

initState方法

如果您是Android开发人员,则initState是您的OnCreate方法;如果您是iOS开发人员,则ViewdidLoad / viewWillAppear与initState方法相同。

initializeVideo方法

此方法用于初始化VideoPlayerController。

startTime方法

该方法用于创建计时器,以便在视频或计时器结束时立即移至下一个屏幕。

 

ImageSplashScreen.dart类

如何在 Flutter 中创建启动画面?

ImageSplashScreen扩展了StatefulWidget,因为我们需要在运行时更改其状态,因此我们需要一个StatefulWidget。

 

SplashScreenState类

SplashScreenState类扩展了ImageSplashScreen类。该类中使用的一些重要方法在下面提到。

startTime方法

此方法创建一个异步,在2秒钟后调用该异步以移至下一个屏幕。

 

AnimatedSplashScreen.dart类

如何在 Flutter 中创建启动画面?

AnimatedSplashScreen扩展了StatefulWidget,因为我们需要在运行时更改其状态,因此我们需要一个StatefulWidget。

我们创建了一个动画控制器,持续时间为2秒,并添加了一个名为CurvedAnimation的动画。

这样就完成了此Splash Demo App的所有详细信息。

您可以从我们的GitHub  存储库中获取完整的源代码  。

喜欢 (6)

您必须 登录 才能发表评论!