我正在使用iPhone应用程序,在用户正在输入UITextView的iPhone应用程序中。 我想知道如何在键盘上添加完成键而不是正常的返回键,当你点击该键时,键盘会关闭。
谢谢!
答案 0 :(得分:33)
-textViewShouldReturn:
协议中没有UITextViewDelegate
方法。如果你想让return(done)键关闭键盘,最好使用UITextField,UITextView
用于编辑多行文本(所以你需要一种方法来输入换行符)。
如果你真的想在点击UITextView
中的返回键时关闭键盘,你可能会这样做:
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text {
if ([text isEqual:@"\n"]) {
[textView resignFirstResponder];
return NO;
}
return YES;
}
答案 1 :(得分:-3)
这很简单:
textField.returnKeyType=UIReturnKeyDone;
将其添加到文本字段的委托中,以便在按下键盘时删除键盘:
- (BOOL)textFieldShouldReturn:(UITextField *)aTextfield {
[aTextfield resignFirstResponder];
return YES;
}
答案 2 :(得分:-5)
除了设置:
textField.returnKeyType = UIReturnKeyDone;
您需要将文本字段的委托设置为您的类,并执行以下操作:
- (BOOL)textFieldShouldReturn:(UITextField *)textField {
[textField resignFirstResponder];
return YES;
}
此设置returnKeyType也可以从Interface Builder完成 - 如果您在XIB中定义了UI。另一方面,-resignFirstResponder将确保键盘消失。它应该在-textFieldShouldReturn:delegate方法中完成,因为当用户点击完成按钮时会调用它。
希望这有帮助。