はじめに

今回は、Xcode12から追加された、Info.plistを使った Launch Screen の構成方法について紹介したいと思います。

Appleは2020年初頭、デベロッパーに対して「起動画面にはlaunch.storyboardsを使用すること」を要求すると発表しました。

これはごく自然な流れなのですが、SwiftUIアプリを開発しているデベロッパーは少し違和感を感じていたのではないでしょうか。そう、SwiftUIアプリはそもそもstoryboardsを利用しないのにも関わらず、起動画面のためだけにstoryboardsを組み込む必要があったからです。

そこでXcode12からは、storyboardsではない方法で Launch Screen を構成する方法が用意されました。

Info.plist で Launch Screen

まずは、Xcode12を利用して、SwiftUIのプロジェクトテンプレートを作成してみます。

Xcode11.x では、LaunchScreen.storyboardsファイルが自動で生成されていましたが、Xcode12.x からは生成されなくなりました。

その代わり、Info.plistファイルには、新たにLaunch Screen というキーが追加されています。

まずはプロジェクトにロゴ画像を組み込み、この画像を表示するLaunch Screen を設定してみます。

ではアプリをビルドして起動してみます。

はい、できました。とても簡単ですね!

そのほかのカスタム項目

画像を表示する以外にも、さまざまなカスタム項目が用意されています。

Image Name画像ファイルAssetsで定義
Background color背景色Assetsで定義
Image respects safe area insets画像のセーフエリア設定
Show Navigation barナビゲーションバーの表示
Show Tab barタブバーの表示
Show Toolbarツールバーの表示

例えば、画像以外に背景色やツールバーを表示すると、Launch Screen はこのような見た目になります。

おわりに

いかがだったでしょうか?シンプルな Launch Screen は、もうこれだけで問題なさそうですね!

Appleも、Launch Screen は極力シンプルな作りにすることを勧めています。この手法でできる範囲で作るのが良さそうです。

今回は紹介しませんでしたが、「スキーム起動ごとに別のLaunch Screen を表示する」などの設定も可能です。

公式ドキュメントはこちらですので、もっと踏み込んで学習したい場合には、ぜひ公式ドキュメントにも目を通してみてください。



ギャップロを運営しているアップフロンティア株式会社では、一緒に働いてくれる仲間を随時、募集しています。 興味がある!一緒に働いてみたい!という方は下記よりご応募お待ちしております。
採用情報をみる