[英]How do I include iOS App Icon image within the app itself?
我有標准的 iOS 應用程序,資產中包含一個標准的應用程序圖標。
我想在應用程序中顯示應用程序圖標(使用 SwiftUI)。 請注意,我不是在問如何設置應用程序圖標,或動態更改圖標。 我只想在應用程序自己的設置視圖中顯示應用程序圖標。
看起來 App Icon 資產應該和其他任何資產一樣,我可以使用以下內容包含它(注意在默認圖標命名中 App 和 Icon 之間沒有空格),
Image("AppIcon")
我也試過嘗試,
Image("icon_60pt@3x.png") // Pick out a specific icon by filename
Image("icon_60pt@3x") // Maybe it assumes it's a .png
Image("icon_60pt") // Maybe it auto picks most appropriate resolution, like UIKit
...但這些都不起作用。
如何在應用程序中包含應用程序自己的圖標,而不將其復制為單獨的圖像集(我已經嘗試過,並且確實有效。)
謝謝。
這有效:
extension Bundle {
var iconFileName: String? {
guard let icons = infoDictionary?["CFBundleIcons"] as? [String: Any],
let primaryIcon = icons["CFBundlePrimaryIcon"] as? [String: Any],
let iconFiles = primaryIcon["CFBundleIconFiles"] as? [String],
let iconFileName = iconFiles.last
else { return nil }
return iconFileName
}
}
struct AppIcon: View {
var body: some View {
Bundle.main.iconFileName
.flatMap { UIImage(named: $0) }
.map { Image(uiImage: $0) }
}
}
然后,您可以在任何視圖中使用它:
AppIcon()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.