0

我需要在 UIView 上以编程方式添加 UITextField。我什至不需要 UITextField 可见,只需要键盘,因为我打算以其他方式处理文本字段方面。但是键盘根本没有出现。

我有这个:

UITextField* field = [[UITextField alloc] initWithFrame:CGRectMake(0, 0, 320, 480)];

SPView* view = (SPView*)[SPStage mainStage].nativeView; // I think I don't need this line I believe, since I don't need it visible, but this is my UIView (SPView inherits from UIView)
[view addSubview:field];

[field becomeFirstResponder];

我还需要什么来显示 iOS 原生键盘吗?

为什么键盘不能显示?我错过了什么重要的东西吗?

4

1 回答 1

0

找到了解决方案。我在构造函数中调用代码。

虽然 Sparrow 上的其他所有内容都可以在构造函数中完成,但 nativeView 直到所有内容都构建完成后才被分配,因此视图给出(null)了一个NSLog(@"%@", view);

对代码进行了延迟调用(在调用之前等待 0.2 秒),现在它可以正常工作了。

于 2013-01-21T20:45:06.383 回答