Если вы пришли сюда в поисках решения Swift, как я, вот и вы :)

у скрыть клавиатуру, когда пользователь нажимает вернуться вUITextView объект в iphone. Тем не менее, таинственным образом это не работает дляUITextView но работает наUITextField, Я не могу понять, почему ...

Вот что я сделал:

1) Я создал приложение на основе представления в XCode4.

2) в .xib созданUITextView, UITextField а такжеUIButton объекты

3) Помечено какUITextField а такжеUITextView делегаты Владельцу Файла в Аутлетах

4) Добавлено<UITextFieldDelegate> в @interface UIViewController в .h

5) ДобавленоtextFieldShouldReturn функция в м

Вот коды:

.h файл

@interface keyboardDisappearViewController : UIViewController <UITextFieldDelegate>
{

    UITextView *textBoxLarge;
    UITextField *textBoxLittle;
}
@property (nonatomic, retain) IBOutlet UITextView *textBoxLarge;
@property (nonatomic, retain) IBOutlet UITextField *textBoxLittle;

- (IBAction)doSomething:(id)sender;
@end

.m файл

- (BOOL) textFieldShouldReturn:(UITextField *)theTextField 
{
    NSLog(@"textFieldShouldReturn Fired :)");
    [textBoxLarge resignFirstResponder];
    [textBoxLittle resignFirstResponder];
    return YES;
}

Удивительно, что клавиатура исчезает в случае textBoxLittle (UITextField), но не в случае textBoxLarge (UITextView)

В качестве дополнительной проверки я сделал кнопку вызова функции doSomething

- (IBAction)doSomething:(id)sender {
    [textBoxLarge resignFirstResponder];
    [textBoxLittle resignFirstResponder];
}

Когда я нажимаю кнопку, клавиатура исчезает в обоих текстовых полях.

Это сводит меня с ума, почему textFieldShouldReturn работает для небольшого текстового поля, но НЕ для большого текстового поля.

Пожалуйста помоги!

Ответы на вопрос(7)

Ваш ответ на вопрос