NSSearchField 未按预期工作

发布于 2024-08-27 09:30:55 字数 693 浏览 6 评论 0原文

我正在尝试追随 Marcus Zarra 的《核心数据》一书。在书中,他制作了一个小型示例应用程序,但当事情不顺利时,它并没有提供太多帮助......

他首先以可视化方式设计三个实体,然后将每个实体的数组控制器添加到主笔尖。 其次,他添加了一个表格视图和一些其他可视组件来显示来自阵列控制器的数据。

到目前为止,我已经设法遵循,但现在他向 GUI 添加了一个搜索字段,并将其绑定到与表视图之一相同的数组控制器。预期的行为是在搜索字段中输入内容时表格视图会被过滤,但什么也没有发生。

我如何找出问题所在?

笔尖的相关部件如下:

NSArrayController 配方
- 模式 = 实体
- 实体名称=配方

带有TableColumn的TableView
- 价值绑定到食谱
-- 控制器键=arrangedObjects -- 模型键路径=名称

搜索字段
- 谓词绑定到食谱
-- 控制器键 = filterPredicate
-- 模型键路径 = 名称
-- 显示名称 = 谓词
-- 谓词格式 = keyPath 包含 $value

控制台中没有相关消息。

问候,
-维加

I'm trying to follow Marcus Zarra in his book 'Core Data'. In the book, he makes a small sample application, but it doesn't give much help when things don't work out...

He starts out by visually designing three entities, and then adding array controllers for each entity to the main nib.
Second, he adds a tableview and some other visual components to show data from the array controllers.

So far, I have managed to follow, but now he adds a search field to the gui, and binds it to the same array controller as one of the tableviews. Expected behavior would be for the tableview to get filtered when typing in the search field, but nothing happens.

How do I find out what's wrong?

The relevant parts from the nib is as follow:

NSArrayController Recipes
- Mode = Entity
- Enitity Name = Recipe

TableView w/TableColumn
- Value Bind To Recipes
-- Controller Key = arrangedObjects
-- Model Key Path = name

Search Field
- Predicate Bind To Recipes
-- Controller Key = filterPredicate
-- Model Key Path = name
-- Display name = predicate
-- Predicate Format = keyPath contains $value

There are no relevant messages in the console.

regards,
-Vegar

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

浮萍、无处依 2024-09-03 09:30:55

书中的示例有错误,将在下次印刷时修复。您可以完全删除模型键路径,因为它永远不会被读取,并将谓词格式更改为:

name contains[c] $value

The book example is wrong and will be fixed in the next printing. You can remove the Model Key Path entirely as it is never read and change the predicate format to:

name contains[c] $value
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文