PR

[Xcode12]起動画面(Launch Screen)がInfo.plistで設定できるようになっていた話と画像がうまく表示されなかった話

iOS

はじめに

みなさん、クロスプラットフォーム等使わずにNativeのSwiftでアプリをリリースすることはあるでしょうか?

私はFlutterを触る前は個人でSwiftの勉強をしてアプリを何本かリリースしました。

今も絶賛Google Mobile AdsのバージョンアップとApp Tracking Transparencyの対応のため古いアプリをSwiftUIで書き換えつつ悪戦苦闘中です。

そんなこんなで、今回久しぶりにSwiftUIでプロジェクトから作り直していたら起動画面の設定方法が変わっていたのでメモがてら紹介します。

環境

  • Xcode 12.4

設定方法

プロジェクトの作成

  • Interface: SwiftUI
  • Life Cycle: SwiftUI App
  • Language: Swift

上記の条件でプロジェクトを作成します。

するとInfo.plistに今までになかったLaunch Screenというプロパティが追加されています。

起動画面に表示したい画像を準備

Assets.xcassetsImage Setを追加して、適当な名前をつけます。

起動画面の背景色に設定したい色を準備

Assets.xcassetsColor Setを追加して、色を設定後、適当な名前をつけます。

Info.plistに設定を追加

あとは先程設定したファイル名をImage NameBackground Nameに設定します

基本設定はこれぐらいです。あとは起動するのみ

起動結果

設定が終わって、いざ起動!

えー、背景色設定されてね

どうやら、これはXcodeのバグなのかキャッシュのせいかはわかりませんがうまく反映されないことがあるようです。

そこで、もしうまく反映されない場合は

[Product]→[Clean Build Folder]を実行シミュレーターを再起動してみてください。

すると。。。

無事設定できました。

パラメーターの説明

Image Name

Assetsで定義した画像ファイルを設定できます。

Background color

Assetsで定義した背景色を設定できます。

Image respects safe area insets

画像のSafe Area(セーフエリア)の設定を変更できます。

Show Navigation bar

ナビゲーションバーの表示/非表示の設定。

Show Tab bar

タブバーの表示/非表示の設定。

Show Toolbar

ツールバーの表示/非表示の設定。

さいごに

最初、うまく反映されなくて1日以上苦戦していました。みなさんもハマらないように注意して下さい。

おすすめ参考書

コメント

タイトルとURLをコピーしました