Xamarin.Forms splash screen
Applications often have a startup delay while the application completes its initialization process. Developers may want to offer a branded experience, typically called a splash screen, while the application is starting. This article explains how to create splash screens for Xamarin.Forms applications.
Xamarin.Forms is initialized on each platform after the native startup sequence has completed. Xamarin.Forms is initialized:
- In the
OnCreatemethod of the
MainActivityclass on Android.
- In the
FinishedLaunchingmethod of the
AppDelegateclass on iOS.
- In the
OnLaunchedmethod of the
Appclass on UWP.
The splash screen should be shown as soon as possible when the application is launched, but Xamarin.Forms is not initialized until late in the startup sequence, which means that the splash screen must be implemented outside of Xamarin.Forms on each platform. The following sections explain how to create a splash screens on each platform.
Xamarin.Forms Android splash screen
Creating a splash screen on Android requires creating a splash
Activity as the
MainLauncher with a special theme. As soon as the splash
Activity is started, it launches the main
Activity with the normal application theme.
For more information about splash screens on Xamarin.Android, see Xamarin.Android splash screen.
Xamarin.Forms iOS splash screen
A splash screen on iOS is referred to as a Launch Screen. Creating a Launch Screen on iOS requires creating a Storyboard that defines the UI of the launch screen, and then setting the Storyboard as the Launch Screen in the Info.plist.
For more information about Launch Screens on Xamarin.iOS, see Xamarin.iOS Launch Screen.
Xamarin.Forms UWP splash screen
On UWP, the Package.appxmanifest contains a Visual Assets tab with a Splash Screen submenu. The splash screen graphics can be specified in this menu: