使用 SwiftUI 在 Xcode 中创建 iOS 和 macOS 应用图标
需要 Xcode 12 和 macOS 11
TL;DR (太长不看): 查看此仓库中的示例项目。
在您的 Package.swift
中定义两个 product
添加 swiftui-app-icon-creator
package 作为依赖项。
您的 Package.swift
应该像这样
// swift-tools-version:5.3
import PackageDescription
let package = Package(
name: "my-app-icon",
platforms: [.macOS(.v11)],
products: [
.library(name: "MyAppIcon", targets: ["MyAppIcon"]),
.executable(name: "export", targets: ["Export"])
],
dependencies: [
.package(url: "https://github.com/darrarski/swiftui-app-icon-creator.git", from: "1.0.0")
],
targets: [
.target(name: "MyAppIcon", dependencies: [
.product(name: "AppIconCreator", package: "swiftui-app-icon-creator")
]),
.target(name: "Export", dependencies: ["MyAppIcon"])
]
)
只需在 Library target 中创建一个新的 SwiftUI 视图
import SwiftUI
public struct MyAppIconView: View {
public init() {}
public var body: some View {
// ...
}
}
将此代码添加到包含您的图标视图的文件中
import AppIconCreator
struct MyAppIconView_Preivews: PreviewProvider {
static var previews: some View {
IconPreviews(
icon: MyAppIconView(),
configs: .iOS
)
}
}
确保您已选择与您的 Library target 关联的构建方案(在本例中为 MyAppIcon
)。
您应该能够在 Xcode 预览中实时预览该图标。
您可以调整 configs
参数来指定您想要预览的图标类型。查看 IconConfig.swift
获取可能的选项。
将此代码添加到您的 Executable target 中的 main.swift
文件
import AppIconCreator
import MyAppIcon
import Foundation
let icon = MyAppIconView()
let configs = [IconConfig].iOS
let images = [IconImage].images(for: icon, with: configs)
let exportURL = FileManager.default.homeDirectoryForCurrentUser.appendingPathComponent("Desktop").appendingPathComponent("MyAppIcon")
images.forEach { $0.save(to: exportURL) }
您可以调整 configs
变量来指定您想要导出的图标类型。查看 IconConfig.swift
获取可能的选项。
在上面的示例中,图像将被导出到当前用户的桌面上的 MyAppIcon
目录。您可以根据需要随意调整 exportURL
变量。
确保您已选择与您的 Executable target 关联的构建方案(在本例中为 export
)。
您的图标的图像应该被导出到 exportURL
变量中指定的目录中。
版权所有 © 2020 Dariusz Rybicki Darrarski
许可:MIT