我遇到了一個活着正在吃東西的問題。我真的很希望我在這裏錯過了一些小東西。這似乎是一個相當「n00b」的問題。在XCode中更改NSImage - 這行代碼不起作用
我有一個空白的NSImageView
,我想按下按鈕時顯示圖片 - 這很簡單。
這裏是我的編碼
NSBundle *mb = [NSBundle mainBundle];
NSString *fp = [mb pathForResource:@"tiles" ofType:@"PNG"];
NSImage *image = [[NSImage alloc] initWithContentsOfFile:fp];
if ([image isValid]) {
[selection setImage:image];
[selection setImageScaling:NSScaleProportionally];
}
而行,
tiles.PNG
是我包的資源
如果[image isValid]
是滿意的,因爲我已經插入僞碼到條並有該工作
selection
在我的頭文件中定義如下
IBOutlet NSImageView *selection;
它也鏈接到IB中的應用程序委託。
我有一種感覺,我可能沒有正確地鏈接它?
爲什麼圖像不顯示?如果任何人都可以看到一個錯誤 - 或者我提供的工作代碼 - 我會很感謝soooooo
布賴恩
你能提供一個你在IB連接的屏幕截圖嗎? – ennuikiller 2009-11-29 19:29:55
BTW:'-initWithContentsOfFile:'在失敗時返回'nil',而不是無效的圖像。你應該檢查'if(image){}'而不是'if([image isValid]){}'。 – 2009-11-29 19:55:32
如果(圖像)也滿足,那麼圖像文件路徑是正確的。我認爲這是一個鏈接問題。我會盡快提供一個截圖。出於某種原因,PREVIEW不爲我工作。沒有屏幕捕獲正在節省,並且我在Finder中打開的每個.jpg或.png都顯示一個白色屏幕...試圖弄清楚爲什麼...並且很難重新啓動... – Brian 2009-11-29 20:17:07