【发布时间】:2011-05-30 22:18:43
【问题描述】:
我有一个带有 nssearchfield、nstableview 和一个带有三个单选按钮的 nsmatrix 的视图。当搜索字段是第一响应者并且用户按下选项卡时,使用代表我更改选定的单选按钮,这可以完美地工作,但我想要的是当用户按下选项卡时搜索字段不会松开第一响应者
【问题讨论】:
标签: objective-c xcode cocoa first-responder nssearchfield
我有一个带有 nssearchfield、nstableview 和一个带有三个单选按钮的 nsmatrix 的视图。当搜索字段是第一响应者并且用户按下选项卡时,使用代表我更改选定的单选按钮,这可以完美地工作,但我想要的是当用户按下选项卡时搜索字段不会松开第一响应者
【问题讨论】:
标签: objective-c xcode cocoa first-responder nssearchfield
你可以继承NSSearchField并添加这个函数
- (BOOL)resignFirstResponder {
return NO;
}
它将拒绝放弃第一响应者身份。
另一种方法是捕获 windowDidUpdate 通知。每当发生任何变化(包括焦点更改)时都会发送这些消息,因此您可以检查 firstResponder 并使其再次成为第一响应者。
[searchField becomeFirstResponder];
【讨论】: