我的应用程序可以在运行 iOS 4.1 但在 iOS 4.2 上运行的 iPhone 上正常运行。我将 UIInputField 设置为第一响应者,但键盘没有显示。becomeFirstResponder 在 viewDidLoad 方法中被调用。这是一个错误还是苹果做出了巨大的改变?我正在使用 Xcode 3.2.5。
问问题
766 次
3 回答
2
输入字段是否启用了用户交互?现在在 iOS 4.2 中是必需的。
于 2010-12-01T02:52:15.833 回答
1
-viewDidLoad
在您的视图首次初始化时调用,不一定在显示时调用。试着-becomeFirstResponder
在里面打电话-viewDidAppear:
:
- (void)viewDidAppear:(BOOL)animated {
[super viewDidAppear:animated];
[myField becomeFirstResponder];
}
于 2010-12-01T02:59:02.983 回答
0
在 Apple 开发者论坛 (https://devforums.apple.com/message/325348#325348) 上找到了一个帖子,其中描述了解决方案。在调用 becomeFirstResponder 之前,最好在 viewDidLoad 方法中将 UITextField 属性 userInteractionEnabled 设置为 YES。
于 2010-12-01T07:56:31.263 回答