2012-01-16 83 views
2

我想在標籤中顯示NSArray中被稱爲頁面的當前元素數量。繼其他指南我做了以下內容:將標籤的值綁定到NSArray的count屬性

  1. 創建一個NSArrayController在IB(稱爲pagesController),它一定到NSArray的頁面
  2. 限定的標籤的值屬性NSArrayController的與控制鍵= arrangedObjects和型號關鍵路徑= @count

問題是,當程序運行時,標籤始終顯示「0」。爲了檢查這些東西是否正常工作,我嘗試在用戶單擊另一個按鈕(該按鈕基本上在頁面數組中插入一個新元素)時記錄消息:在這種情況下,輸出是正確的,即當前元素數量在打印的數組中是正確的。 我錯在哪裏?

+0

某些代碼會更好理解,哪裏出錯? – vishy 2012-01-16 12:59:18

+0

你遵循什麼「其他指南」?當我谷歌我只找到這個問題。 – ohcibi 2014-07-13 12:33:06

回答

0

很多人沒有正確使用KVC。您的陣列控制器將只通知pages屬性被重新定義,而不是在對象添加到陣列時通知。嘗試使用適當的更改通知來包裝您的代碼:

[self willChangeValueForKey:@"pages"]; 
[pages addObject:someObject]; 
[self didChangeValueFOrKey:@"pages"]; 
+0

你是對的,非常感謝! – renton 2012-01-16 13:45:25

相關問題