UIText просмотр вопроса делегата
Я хочу уйти в отставку клавиатуры из UItextview. Как программно реализовать метод делегата UItextView.
4 ответа
Если вы хотите, чтобы при нажатии на клавишу возврата клавиатура ушла, вам нужно написать, внедрить этот метод....
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text {
if([text isEqualToString:@"\n"]) {
[textView resignFirstResponder];
return NO;
}
return YES;
}
Просто сделай это скопировать и вставить....:)
Убедитесь, что вы заявляете о поддержке UITextViewDelegate
протокол.
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text {
if([text isEqualToString:@"\n"]) {
[textView resignFirstResponder];
return NO;
}
return YES;
}
Вы должны использовать UITextViewDelegate. Вы должны объявить использование протокола в заголовке вашего класса следующим образом:
@interface YourClass:NSObject<UITextViewDelegate>
Затем в вашем.m вы должны установить свой класс в качестве делегата в какой-то момент что-то вроде:
textView.delegate = self;
Затем в вашем.m вы снова должны реализовать методы делегата, в частности:
textViewDidChange:
Вы можете прочитать ссылку на протокол по адресу http://developer.apple.com/library/ios/#documentation/uikit/reference/UITextViewDelegate_Protocol/Reference/UITextViewDelegate.html для получения дополнительной информации.
Для UITextview нет определенного метода делегата, чтобы знать, когда пользователь нажимает "RETURN", так что вы можете сделать это
//In .h File
@interface BlahBlah : UIViewController <UITextViewDelegate>
@property(nonatomic, retain) IBOutlet UITextView *myTextView;
@end
//In .m File
@implementation BlahBlah
@synthesis myTextView;
//In some method, can be viewDidLoad OR viewDidAppear . your convenience ;)
{
self.myTextView.delegate = self;
}
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text {
if([text isEqualToString:@"\n"]) {
[textView resignFirstResponder];
return NO;
}
return YES;
}