iOS 4.2的键盘问题

时间:2010-11-30 18:22:15

标签: iphone cocoa-touch ios4 becomefirstresponder ios-4.2

我的应用程序在运行iOS 4.1的iPhone上运行,但在iOS 4.2运行时无效。我有一个UIInputField设置为第一响应者但键盘没有显示。在viewDidLoad方法中调用becomeFirstResponder。这是一个错误还是苹果公司做出了重大改变?我正在使用Xcode 3.2.5。

3 个答案:

答案 0 :(得分:2)

输入字段是否启用了用户交互?这在iOS 4.2中是必需的。

答案 1 :(得分:1)

首次初始化视图时会调用

-viewDidLoad,而不一定在显示时调用。请尝试在-becomeFirstResponder内调用-viewDidAppear:

 - (void)viewDidAppear:(BOOL)animated {
     [super viewDidAppear:animated];

     [myField becomeFirstResponder];
 }

答案 2 :(得分:0)

在Apple开发者论坛(https://devforums.apple.com/message/325348#325348)中找到了一个解决方案。在调用becomeFirstResponder之前,将UITextField属性userInteractionEnabled设置为YES,最好是在viewDidLoad方法中。