【发布时间】:2022-01-18 23:43:39
【问题描述】:
swiftUI中gif动画图片的显示方式
因为图片
Image("fall-leaves")
不支持 gif 格式
在下面回答
【问题讨论】:
标签: swift macos image swiftui animated-gif
swiftUI中gif动画图片的显示方式
因为图片
Image("fall-leaves")
不支持 gif 格式
在下面回答
【问题讨论】:
标签: swift macos image swiftui animated-gif
在 swiftUI 中显示 gif 图像最简单、最快的方法是使用 Preview / QuickLook (QL) / QLPreviewView
Quartz 仅适用于 macOS 10.4+ https://developer.apple.com/documentation/quartz
import SwiftUI
import Quartz
struct QLImage: NSViewRepresentable {
var url: URL
func makeNSView(context: NSViewRepresentableContext<QLImage>) -> QLPreviewView {
let preview = QLPreviewView(frame: .zero, style: .normal)
preview?.autostarts = true
preview?.previewItem = url as QLPreviewItem
return preview ?? QLPreviewView()
}
func updateNSView(_ nsView: QLPreviewView, context: NSViewRepresentableContext<QLImage>) {
nsView.previewItem = url as QLPreviewItem
}
typealias NSViewType = QLPreviewView
}
【讨论】: