2011-03-11 115 views
1

我有一個NSArrayController,其中的內容我想成爲所有連接屏幕的CGDirectDisplayID的列表。現在,我有以下代碼:沒有核心數據的NSArrayController綁定

NSArray* screens = [NSScreen screens]; 
for (NSScreen* screen in screens) 
{ 
    NSNumber* screenId = (NSNumber*)[[screen deviceDescription] valueForKey:@"NSScreenNumber"]; 
    [displaysList addObject:screenId]; 
} 

[displaysArrayController setContent:displaysList]; 

displaysList是在awakeFromNib分配的NSMutable陣列,請問我需要在界面生成器做在displaysList填充一個彈出按鈕,值是多少?

回答

1
  1. 在上面貼出的代碼的類中添加一個新的NSArray屬性。稱它爲
    例如displaysArray
  2. 添加您連接到IBOutlet中displaysArrayController
  3. 在Interface Builder中,你會發現一個名爲「客體控制器」 組設置其模式爲「NSArray的」 禁用檢查一個NSArrayController的「準備內容」
  4. 在另一部分中,您會看到一個名爲「Controller Content」的組。啓用複選框並將其綁定到具有屬性displaysArray的對象。將模型關鍵路徑設置爲 displaysArray。

我希望幫助:)

+0

是謝謝你。現在,當我有一個UI元素,比如說一個彈出式按鈕時,我會將內容對象組綁定到什麼關鍵路徑? – grivescorbett 2011-03-12 19:40:47

+0

將它綁定到陣列控制器並設置路徑爲排列對象 – lbrndnr 2011-03-12 20:56:00

+0

但是,如果我只是設置路徑排列對象,那麼在模型關鍵路徑中有一個錯誤,表示它期待NSString,我給它NSArray,怎麼可能我得到它傳遞數組中的實際值? – grivescorbett 2011-03-13 20:54:46

相關問題