In iOS 7 and lower, the approach for creating the launch screen is to use static image resources. The drawback of this method is that the app developer will have to provide many different images, each with different resolution for each iOS device. In iOS 8 and above, the approach is to create a LaunchScreen.storyboard, which is much more powerful in terms of customization and is easier to maintain.

How to set your launch screen

The default app in flutter provides you with predefined AppIcons, launch images and a LaunchScreen.storyboard. To modify them and create your own launch screen using your own assets and design, you will need the following:

project_name/ios/Runner/Assets.xcassets: The resource that holds your image asset catalogs (for AppIcons, LaunchImages and LaunchScreen).

The resource that holds your image asset catalogs (for AppIcons, LaunchImages and LaunchScreen). project_name/ios/Runner/LaunchScreen.storyboard: Your default storyboard used for your launch screen (used in iOS versions 8+).

Your default storyboard used for your launch screen (used in iOS versions 8+). Xcode 7.1 or newer version (optional: needed only if you prefer WYSIWYG workflow for changing your images).

The workflow for creating your own launch screen can be handled from Xcode or manually in the Flutter environment. In this article we are going to cover both the manual and the Xcode WYSIWYG approach.

In your project_name/ios/Runner/Assets.xcassets you will find the following sub-folders: