這可能是一個n00b問題,所以我提前道歉。我第一次使用NSImage,基本上我需要簡單地拍攝一張位於「我的資源」文件夾中的圖片,並在單擊按鈕時將其顯示在NSView/NSImageWell中。打印文件到NSImage不能正常工作(可可)
NSImage *image = [[NSImage alloc] initWithContentsOfFile:@"tiles.PNG"];
if ([image isValid]) {
NSImageView *view = [[NSImageView alloc] init];
[selection setImage:image];
[selection setImageScaling:NSScaleProportionally];
}
else {
--- This line of code always activates meaning my image isn't valid
}
我唯一的猜測是我得到的圖像文件的路徑錯誤,我已經找遍了正確的方式來訪問它。另一個猜測是我的代碼錯了。任何人都熟悉這個?謝謝!
請注意,他使用的是NSImage/NSImageWell,這些在iPhone上不可用,所以他必須在Mac上,因此無法訪問UIKit,並且無法訪問UIImage。另外,UIImage/NSImage * img = [UIImage imageNamed:@「titles.PNG」]將完成與上面的代碼相同並稍微清晰一些。 – refulgentis 2009-10-30 07:23:39
是的,我正在寫這個MAC,而不是iPhone。我認爲代碼是正確的,但我的圖像沒有出現。我是否必須使ImageWell成爲一個自定義類,並帶有NSView的子類?我只是從IB拖出一個Imagewell,並將其稱爲「預覽」,並在將它聲明在我的.h文件中之後引用它。現在的代碼工作,因爲如果[圖像isValid]滿意,但仍然沒有圖像打印到我的觀點:( – Brian 2009-10-30 15:30:53
無論你在Mac上,我只是掌握了代碼,因爲我手頭上。原理是一樣的,如果文件在資源文件夾中,使用NSBundle找到它的路徑,也可以在NSFileManager的'fileExistsAtPath:'中敲擊以確保該文件位於由NSBundle返回的路徑上 – TechZen 2009-10-30 15:37:52