我很可愛的編程新手。 在一個簡單的主從視圖我想表明:核心數據。過濾nstableview
+-------+ +-----------+ + +
| | | |
| tags | | books | detail
| | | (selected | (selected
| | | tag) | book)
| | | |
+-------+ +-----------+ + +
我已經定義了兩個實體:
標籤,與屬性名和關係書
書,具有幾個屬性(標題,作者,類型,d吃了,..)和多對多的關係標籤(一本書可以有幾個標籤,一個標籤可以有很多書)。
然後我定義了兩個數組控制器(tagsArrayController和booksArrayController)。 他們填充表格和詳細視圖。
值綁定是:
標籤的tableview柱: tagsArrayController arrangedObjects
書的tableview柱: tagsArrayController selection.details
詳細視圖: booksArrayController selection.details
一切正常。
我想使用第一個表(標記)作爲書籍表的過濾器:當在標記表中選擇一行時,相關書籍將顯示在書籍表中。
但是,當沒有標籤被選中時,過濾器應該是禁用,並且書籍表應該填充所有記錄。相反,現在當沒有標籤被選中時,書籍表格不顯示任何記錄。
有沒有辦法做到這一點?
在此先感謝。
那麼,最後我找到了解決方案。 我添加的方法:
-(void)tableViewSelectionDidChange:(NSNotification *)notification
,然後用於解setFilterPredicate方法在tagsArrayController。