如果您正在寻找更多功能以包含在您的应用程序的“Plus”或“Premium”层中,这个永远不会失败。对于关心自定义并希望更好地与用户的主屏幕集成的应用程序,提供替代应用程序图标是必须的。
该模型将允许我们在不同的应用程序图标之间切换,我们可以放置任意多个图标,但为了使本教程简短,我们将仅使用浅色和深色图标。这里将名称与各自的图标匹配非常重要,“Light”和“Dark”是我们要在 UI 中显示的图标文件的名称,而“nil”和“AppIcon-Dark”是我们实际用来更改图标的文件。
import Foundation
// MARK: - App Icon
enum AppIcon: String, CaseIterable {
case light = "Light"
case dark = "Dark"
var name: String? {
switch self {
case .light:
return nil
case .dark:
return "AppIcon-Dark"
}
}
}
在上一篇关于 SwiftUI 中的外观的文章中,我们创建了一个 ThemeController 而不是 AppearanceController,以防我们以后想要添加更多功能,例如替代应用程序图标,所以我们也会在这里做同样的事情。
import SwiftUI
// MARK: - Theme Controller
class ThemeController: