🍁
Swift: NSImageでAPNGを表示する方法
事前準備
Assets.xcassets
に Data Set を新規で追加してください。Image Set だとアニメーションせずに一枚目のコマを表示するだけになります。
コード
import Cocoa
class ViewController: NSViewController {
@IBOutlet weak var imageView: NSImageView!
override func viewDidLoad() {
super.viewDidLoad()
guard let asset = NSDataAsset(name: "Data Set名") else { return }
imageView.image = NSImage(data: asset.data)
imageView.animates = true
}
}
NSDataAsset
を用いてDataを引っ張り出すことがポイントです。
備考
Catalina以降なら動作する模様。
Discussion