【发布时间】:2011-10-15 05:31:11
【问题描述】:
我有以下代码:
- (void)viewDidLoad
{
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self
action:@selector(dismissKeyboard)];
[self.view addGestureRecognizer:tap];
tap.cancelsTouchesInView = NO;
tap.delegate = self;
[tap release];
}
-(void)dismissKeyboard {
[self.textField resignFirstResponder];
}
textField 有一个 clearButton 并且启用了自动更正。当我点击 clearButton 时,一切正常,在UITextField 被清除后键盘仍然出现。但是,当我不想接受建议的自动更正时,键盘会消失,我的文本会被建议的替换。
我需要UITapGestureRecognizer,因为我在UITableView 中有UITextField,所以当用户在UITextField 之外点击时,我想退出键盘。
如何解决此问题,以便在用户需要且键盘仍处于活动状态时拒绝自动更正?为什么 clearButton 可以正常工作,而拒绝自动更正时不能正常工作?
编辑: 它可以与 clearButton 一起正常工作,因为它位于 UITextField 内。因此,手势不会被触发。但是当点击建议的文本更正时,它会被触发......有没有办法检查用户是否点击了建议的文本更正?
【问题讨论】:
标签: iphone tap autocorrect