[英]Filtering children of NSOutlineView with NSTreeController
我正在开发使用Core数据的Mac应用程序。 我正在使用NSOutlineView和NSTreeController绑定视图上的数据。
您可以假设我的数据结构为
我将fetchPredicate应用于我的NSTreeController以成功过滤数据。 另一方面,fetchPredicate仅应用于数据的第一级(应用于父项)。
我需要一种可以将fetchPredicate也应用于子项的方法。 例如,如果我的标准与子项1和子项4相匹配,则结果应为
任何帮助将不胜感激。
您正在应用提取谓词。 NSTreeController不支持过滤谓词。 NSTreeController使用fetch谓词来获取顶级对象,并使用children关系来获取child。 不获取子项,并且不使用获取谓词来获取子项。
解决方案1:实现一个计算所得的属性filteredChildren
,例如以下问题: 过滤树控制器,并在以下不相关的答案中提到: 是否可以将NSTreeController绑定到NSOutlineViewDataSource?
解决方案2:使用数据源代替绑定,上面的答案中也提到了绑定。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.