Cocoa开发:窗口、菜单、表单及文档应用实践
1. 菜单项目的启用与禁用
在Cocoa开发中,我们可以通过绑定来启用和禁用菜单项目,但这种方法有些不自然。更常用的做法是使用带有复选框的单个菜单项来表示状态。以下是具体操作步骤:
1. 回到Interface Builder,选择“Turbo Off”项目,使用 ⌘D 复制它。
2. 将新项重命名为“Turbo”,并配置其值绑定,使用 turbo 键路径连接到 MenuLab_AppDelegate 。
3. 保存更改,返回Xcode,构建并运行应用程序进行测试。
这种快速方法甚至不需要 toggleTurbo: 方法,如果需要,可以删除该方法以及“Turbo On”和“Turbo Off”项目。
1.1 使用第一响应者启用/禁用菜单项目
这是一种更常见的自动启用和禁用菜单项目的方法,能提供更精细的控制。该方法基于响应者链,当Cocoa即将绘制菜单时,会调用 validateUserInterfaceItem: 方法来检查每个菜单项是否应启用。其声明如下:
- (BOOL)validateUserInterfaceItem:
(id <NSValidatedUserInterfaceItem>)anItem;
若该方法在响应者链的对象中实现,Cocoa会在适当的时候调用它,以确定用户界
超级会员免费看
订阅专栏 解锁全文
3

被折叠的 条评论
为什么被折叠?



