2015-05-20 55 views
0

我創造NSCollection視圖(可可),在尺寸和外觀上有許多相同的按鈕,除了他們的圖標(或者你也許可以給他們打電話背景圖片)。更改背景圖像編程可可OBJ-C

在我的XIB文件我已經綁定到集合視圖(型號關鍵路徑:representedObject.foto)按鈕和陣列控制器MyButton類和鑰匙:照片。

我創造了我的按鈕與NSImage中性能等級 - 這是做正確的方式? 如何設置一個形象,我在我的AppController.m項目,使我的運行應用程序時出現在按鈕?

一切應被罰款,因爲我以前用標籤創建NSCollectionView和它的工作。

MyButton.h

#import <Cocoa/Cocoa.h> 
@interface MyButton : NSButton 
@property(retain, readwrite) NSImage *foto; 
@end 

MyButton.m

#import "MyButton.h" 
@implementation MyButton 
@end 

AppController.h

@interface AppController : NSObject {IBOutlet NSArrayController *controller;} 
@property (strong) NSMutableArray *modelArray; 
@end 

AppController.m

#import "AppController.h" 
#import "MyButton.h" 
@implementation AppController 

- (void) awakeFromNib { 
MyButton *FirstOne = [[MyButton alloc] init]; 
//FirstOne.foto = ??? 

_modelArray = [[NSMutableArray alloc] init]; 
[controller addObject:FirstOne];} 

@end 

回答

1

您的圖片位於您的項目中?

FirstOne.image = [NSImage imageNamed:@"StatusBarIcon"]; 

You can learn about storing images in assets here:如果它在.xcasset文件,那麼你就可以設置圖像。我建議使用這些資源,因爲它可以讓您保留項目中可能使用的所有圖像,並有助於減少維護多個分辨率圖像的麻煩。

+0

然後,結合我的按鈕時,我應該綁定到收藏查看項目,重點型號路徑:representedObject.image? – ShaunArchibald

+0

我相信如此。無論如何試試吧 – Luke

+0

我將它綁定在圖像部分下,而不是參數,它的工作原理!我無法相信!非常感謝! – ShaunArchibald