2
我是XCode和Swift的新手。嘗試在OS X應用程序中簡單地設置我的視圖中的圖像。圖像應該從網上加載,但我認爲這並不重要。Swift:如何更改NSImage圖像源?
我創建了一個新的可可應用程序,有一個可用的列表視圖。在列表行的XIB中,我放置了一個「Image View」元素,並且可以在每行中顯示靜態圖像。
現在我想在行加載時更改圖像URL。我將圖像中的行拖到我的控制器類中,該類將@IBOutlet
添加到代碼中。
這是我的控制器類的代碼:
import Cocoa
class ListRowViewController: NSViewController {
@IBOutlet weak var rowImage: NSImageView!
override var nibName: String? {
return "ListRowViewController"
}
override func loadView() {
super.loadView()
var url = NSURL(fileURLWithPath: "http://example.com/some-image.png")
var image = NSImage(byReferencingURL: url!)
self.rowImage.image(image)
}
}
現在非常
搞笑
令人沮喪的錯誤從最後一條語句消息(self.rowImage.image(image)
)是
不能轉換表達式的類型「NSImage中'鍵入'NSImage?'。
好的。這是什麼意思,我該如何解決它?這與某些選擇權有關嗎?我嘗試了?
的和!
的,但無法弄清楚XCode對我的期望。
Thanks @rintaro,那真的是它。我有點尷尬。在我經歷的Objective-C教程中,有一個'.setImage'方法,現在它似乎已經不存在了。有意義的是,'.image'是屬性。猜猜它在XCode中提出的問題太多,沒有提供像「沒有這樣的方法:圖像」的提示。 :)而且你對NSURL再合適不過了。隨着這兩個變化,它的作品完美。再次感謝! – udondan 2014-11-07 03:08:30