2017-10-13 3 views
0

einen Swift-App Mit dem macOS Plattform-Targeting, Ich versuche, ein NSImageView Objekt programmatisch zu erstellen, weise ein Bild, um es, und dann angezeigt werden, mit:macOS - programmatisch ein Bild anzuzeigen mit NSImageView

let imageViewObject = NSImageView(); 
let img = NSImage(cgImage: winCGImage, size: NSZeroSize); 
imageViewObject.image = img 
self.window.contentView?.addSubview(imageViewObject) 

Es wird jedoch kein Bild angezeigt, wenn ich dies ausführe. Auf dem Debugger kann ich sehen, dass imageViewObject.image (d. H. img) ein gültiges Bild hat, und ich kann es mit dem Augensymbol anzeigen.

Was fehlt mir?

Antwort

0

Sie erstellen eine Bildansicht mit einem Zero Rahmen, zuerst erstellen Sie das Bild und dann die Ansicht, die die richtige Größe überschreitet.

let img = NSImage(cgImage: winCGImage, size: NSZeroSize) 
let imageViewObject = NSImageView(frame: NSRect(origin: .zero, size: img.size)) 
imageViewObject.image = img 

Vermeiden Sie, Ansichten mit dem Standardinitialisierer () zu erstellen.

+0

danke das funktioniert –

Verwandte Themen