我是初学者iOS开发人员。我正在处理一个应用程序,其中有一个文本视图,但当我点击“返回”时,关联的键盘不会被解雇。或者'输入'键。
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text
{
if([text isEqualToString:@"\n"])
{
[txtView resignFirstResponder];
return NO;
}
return YES;
}
欢迎任何建议。
答案 0 :(得分:1)
这是取自Niels Hansen :Dismiss iphone keyboard
这里有一些你需要记住的事情。开发人员忘记设置的#1部分是textField的委托。
如果您使用的是Interface Builder,则必须记住需要将textField的委托设置为文件所有者。
如果您不使用Interface Builder,请确保将textfield的委托设置为self。我还包括returnType。例如,如果textField名为gameField:
gameField.delegate = self;
gameField.returnKeyType = UIReturnKeyDone;
您还必须为ViewController实现UITextFieldDelegate。
@interface YourViewController : UIViewController <UITextFieldDelegate>
最后,您需要使用textFieldShouldReturn方法并调用
[textField resignFirstResponder]
-(BOOL) textFieldShouldReturn:(UITextField*) textField {
[textField resignFirstResponder];
return YES;
}
所有textField都将使用相同的方法,因此您只需要进行一次此设置。只要为textField设置了委托,就为接口实现了UITextFieldDelegate,你可以添加textFieldShouldReturn方法并调用resignFirstResponder你的集合