2

如何将 NSMenuItem 的启用状态绑定到 NSArrayController 的选择?我已经尝试将项目的启用状态绑定到控制器的 selectedObjects 或 selectedIndexes ,并且在任何情况下,当有选择时菜单项都不会启用。在 IB 中,我取消选中“启用”复选框。我只是希望在表中有选择时启用 NSMenuItem。我的表允许多项选择,我还使用了一个绑定到 selectedObjects.@count 的按钮,并且该按钮按预期启用/禁用,所以我认为使用相同的键路径也适用于 menuitem,但不是。这并不难,因为我无法通过谷歌找到答案,所以我认为它一定很简单。谢谢

4

1 回答 1

0

启用的绑定必须获得一个BOOL值,不幸的是不会将任何旧对象视为布尔值 True。然而,幸运的是,NSValueTransformer这样做很容易。NSValueTransformer类参考中有几个常量,您可以在 IB 的绑定窗格中使用它们。

在您的情况下,您可以将模型键路径绑定到“selectedObjects”并在 Value Transformer 字段中输入“NIsNotNil”。转换器为绑定提供BOOL它需要的值。

于 2011-03-30T18:37:47.587 回答