我需要在一个非常简单的应用程序中更改输入字段的行为:
每当我启动应用程序时,第一个文本字段就会获得焦点,但我不希望出现这种行为。
我尝试在 IB 中检查“拒绝第一响应者”。它可以工作,但选中此选项后,我无法按“选项卡”按钮在输入字段之间移动。
我该怎么做才能避免启动时焦点并保持使用选项卡键盘按钮移动的能力?
最佳答案
(之前)接受的答案不可靠并且效果不佳。隐藏 NSTextField
的另一个答案也不是很好,因为现在您的 Tab 顺序中有一个新元素。
到目前为止我发现最有效的解决方案是:
在应用程序启动时设置NSTextField拒绝FirstResponder
YES
。
然后,在 Controller 的 viewDidAppear
中,继续将 refusesFirstResponder
设置回 NO
。
启动后一切都表现完美,并且我没有贪婪的 NSTextField
在应用程序启动时窃取第一响应者。
关于objective-c - 避免 NSTextField 上的第一响应者出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7024224/