如果用户在UITextField
中输入了电话号码,则电话键盘没有返回键(与文本输入键盘不同) - 因此-textFieldShouldReturn:
何时/如何调用才能获得编号并关闭键盘?
答案 0 :(得分:0)
-textFieldShouldReturn:
不是唯一可用的委托方法。每次用户输入或删除字符时,都会调用方法- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
。如果您愿意,您可以回复当时输入最后一个字符的用户。
或者,您可以在文本字段附近放置一个按钮,用户在完成后可以触摸它,并使其像返回键一样运行。
答案 1 :(得分:0)
向数字小键盘添加“完成”,“返回”等按钮的推荐方法是添加keyboard accessory view。您可以在附件视图中添加一个按钮,然后对该按钮进行编程以执行任何操作。
查看本教程: Customizing the iOS keyboard
或者,您可以监视字段中的文本,并在有足够数据时执行操作。例如,当您在锁定屏幕上输入PIN时,不会点击“返回”。输入4位数后,它会自动尝试解锁屏幕。
答案 2 :(得分:-2)
以下代码应该有助于[当用户点击文本字段之外时调用]
- (BOOL)textFieldShouldEndEditing:(UITextField *)textField
{
[textField resignFirstResponder];
return YES;
}
不要忘记实施<UITextFieldDelegate>
并在视图控制器中设置textField.delegate = self
。