【发布时间】:2012-06-06 21:20:48
【问题描述】:
好的,所以我觉得这个问题显然缺少一些东西。我在整个代码中使用 makeFirstResponder 从 textField 1 移动到 2、2 到 3 等。这似乎可以按我的意愿工作,但是当加载新视图时,我希望光标位于 textField1 中,并且但是以下代码在加载时并未将光标置于 textField1 中。
- (void) awakeFromNib{
[[[self view] window] makeFirstResponder:textField1];
}
我也尝试了 setInitialFirstResponder,但也没有任何效果(我什至不认为这是正确的。)那么,是因为它在 awakeFromNib 方法中吗?谁能告诉我我错过了什么?提前致谢。
编辑 - 我的解决方案与接受的答案略有不同,所以我想我会发布我的实现。因为我想为其设置第一响应者的视图是稍后添加的子视图(想想应用程序向导的第二个屏幕),我只是添加了一个 setCursorToFirstTextField 方法:
- (void) setCursorToFirstTextField {
[[[self view] window] makeFirstResponder:textField1];
}
并确保在我将子视图添加到原始窗口的自定义视图后调用它。
【问题讨论】:
标签: objective-c nstextfield first-responder