完成后辞职 NSSearchField 的第一响应者的干净方法?

Posted

技术标签:

【中文标题】完成后辞职 NSSearchField 的第一响应者的干净方法?【英文标题】:Clean way to resign first responder of NSSearchField when done? 【发布时间】:2011-12-11 15:58:36 【问题描述】:

在我的应用程序中,我有一个 NSSearchField,它绑定到一个数组控制器,它在用户键入时执行搜索。

问题是搜索字段一旦收到它就永远不会放弃 firstresponder-status。

当用户按下Enter 或在搜索字段外点击时,最简洁的退出第一响应者状态的方法是什么?如果可能的话,我更愿意在 Interface Builder 中做尽可能多的工作。

【问题讨论】:

【参考方案1】:

[searchField.window makeFirstResponder:nil]

如果你只是想去掉对焦环,可以在NIB中禁用它。

如果您想在用户点击窗口中的空白区域时退出第一响应者,您必须使用自定义NSView作为窗口的内容视图并覆盖mouseDown:来调用上述方法。

【讨论】:

以上是关于完成后辞职 NSSearchField 的第一响应者的干净方法?的主要内容,如果未能解决你的问题,请参考以下文章

强制 NSSearchField 在成为第一响应者时开始编辑

辞职第一响应者 UITextfield

触摸 contentview 后辞职第一响应者

iOS文本字段不辞职第一响应者

UITextField 辞职第一响应者 iOS4

从单独的班级辞职第一响应者