🔨

iOSアプリに複数のアイコンを設定する方法

2022/05/14に公開

作るもの

今回はアプリ内のボタンを押すとアイコンが変わるアプリを実装します。

完成イメージ

実装手順

まずはTargets > General > App Icons and Launch Imagesから初期アイコンの選択と
Include all app icon assetsのチェックを入れます。

assetsにアイコンを複数登録しておきます。

完成コード

ViewController.swift
import UIKit

class ViewController: UIViewController {

    @IBOutlet weak var button1: UIButton!
    @IBOutlet weak var button2: UIButton!
    
    override func viewDidLoad() {
        super.viewDidLoad()
    }
    
    @IBAction func button1Tapped(_ sender: UIButton) {
        UIApplication.shared.setAlternateIconName(nil)
    }
    
    @IBAction func button2Tapped(_ sender: UIButton) {
        UIApplication.shared.setAlternateIconName("AppIcon2")
    }
    
}

ポイント

追加したアイコンへ切り替える

UIApplication.shared.setAlternateIconName("AppIcon2")

この箇所でアプリアイコンを変更しています。assetsに登録した名前を入力しましょう。

元のアイコンに戻す

UIApplication.shared.setAlternateIconName(nil)

名前の部分をnilにすると、初期アイコンに切り替わります。

参考記事

https://iosexample.com/simple-alternate-app-icons-with-xcode-13-and-swiftui/

Discussion