好吧,这个问题让我发疯了。
触摸 UITextField
后,键盘弹出大约需要 3-4 秒。这仅在应用启动后第一次弹出键盘时发生,之后动画立即开始。
一开始我以为是加载太多图片的问题,或者我的UITableView
,但我刚刚创建了一个只有一个UITextField
的全新项目,我仍然遇到这个问题。我正在使用 iOS 5、Xcode 4.2 版,并在 iPhone 4S 上运行。
这是我的代码:
#import "ViewController.h"
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
UITextField *textField = [[UITextField alloc] initWithFrame:CGRectMake(20, 20, 280, 30)];
textField.borderStyle = UITextBorderStyleRoundedRect;
textField.delegate = self;
[self.view addSubview:textField];
}
@end
这是所有应用程序的共同问题吗?
现在,我可以让它变得更好的唯一方法是让 textField
在 viewDidAppear
中成为/退出第一响应者,但这并不能完全解决问题- 它只是将延迟加载到 View 加载时。如果我在 View 加载时立即单击 textField
,我仍然会遇到问题;如果我在 View 加载后等待 3-4 秒再触摸 textField,我不会得到延迟。
最佳答案
在您实现任何奇特的技巧来解决此问题之前,请尝试以下操作:停止调试 session ,关闭应用程序的多任务处理,从计算机上拔下您的设备并通过点击其图标正常运行应用程序。我至少见过两种情况,其中延迟仅在设备插入时发生。
关于objective-c - UITextField 的初始键盘动画的超慢滞后/延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9357026/