Форум программистов, компьютерный форум CyberForum.ru

Программирование iOS/iPhone

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.80
di_ingenio
98 / 6 / 1
Регистрация: 14.05.2013
Сообщений: 50
#1

Клавиатура в приложении - Программирование iOS/iPhone

03.09.2013, 12:35. Просмотров 1262. Ответов 6
Метки нет (Все метки)

Проблема такая: есть поля для ввода. И на симуляторе и на моем айфоне одно и тоже: при нажатии появляется клавиатура, текстовое поле скрывается под ней, и к тому же клавиатура не свернуть. Как настроить приложение так, чтобы при появлении клавы поле было видно, и еще клавиатура сворачивалась?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Pro2005
44 / 44 / 3
Регистрация: 27.05.2013
Сообщений: 163
03.09.2013, 14:17     Клавиатура в приложении #2
Все довольно просто... нужно отловить notifications
Objective-C
1
2
3
4
5
6
7
8
9
[[NSNotificationCenter defaultCenter] addObserver:self
                                                 selector:@selector(keyboardDidShow:)
                                                     name:UIKeyboardWillShowNotification
                                                   object:nil];
        
        [[NSNotificationCenter defaultCenter] addObserver:self
                                                 selector:@selector(keyboardDidHide:)
                                                     name:UIKeyboardWillHideNotification
                                                   object:nil];
а в методах keyboardDidHide & keyboardDidShow - сдвинуть вьюшку вверх/вниз соответственно
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
- (void)keyboardDidShow:(NSNotification *)notification {
    CGRect frame = self.frame;
    frame.origin.y -= kOffsetFrameWhenHideShowKeyboard;
    [UIView animateWithDuration:0.2 animations:^{
        [self setFrame:frame];
    }];
}
 
- (void)keyboardDidHide:(NSNotification *)notification {
    CGRect frame = self.frame;
    frame.origin.y += kOffsetFrameWhenHideShowKeyboard;
    [UIView animateWithDuration:0.2 animations:^{
        [self setFrame:frame];
    }];
}
di_ingenio
98 / 6 / 1
Регистрация: 14.05.2013
Сообщений: 50
03.09.2013, 14:25  [ТС]     Клавиатура в приложении #3
Цитата Сообщение от Pro2005 Посмотреть сообщение
Все довольно просто... нужно отловить notifications
Мне бы хотелось, чтобы при нажатии на кнопку Done, клавиатура убиралась. А она никак не хочет прятаться.
Pro2005
44 / 44 / 3
Регистрация: 27.05.2013
Сообщений: 163
03.09.2013, 15:11     Клавиатура в приложении #4
Посмотри внимательно в сторону UITextFieldDelegate... Там есть метод:textFieldShouldReturn
Вот пример
Objective-C
1
2
3
4
- (BOOL)textFieldShouldReturn:(UITextField *)textField {
    [textField resignFirstResponder];
    return YES;
}
di_ingenio
98 / 6 / 1
Регистрация: 14.05.2013
Сообщений: 50
03.09.2013, 15:49  [ТС]     Клавиатура в приложении #5
Спасибо, все чудесно работает!
Dan_banan_
10 / 10 / 1
Регистрация: 03.03.2013
Сообщений: 87
Записей в блоге: 1
14.09.2013, 04:50     Клавиатура в приложении #6
А вообще крутые посоны делают скрытие клавиатуры по тапу на любое свободное место (согласно гайдам ios) Для этого юзаешь класс жестов UIGestureTap. https://developer.apple.com/library/...Reference.html
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.09.2013, 15:45     Клавиатура в приложении
Еще ссылки по теме:

Арабский язык в приложении
Как сделать чтоб UIView двигался вверх, когда клавиатура присутствует
Как сделать свой шрифт в приложении? Objective-C
Архитектура для сетевого взаимодействия в приложении
Мобильная версия сайта в приложении

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
di_ingenio
98 / 6 / 1
Регистрация: 14.05.2013
Сообщений: 50
16.09.2013, 15:45  [ТС]     Клавиатура в приложении #7
Цитата Сообщение от Dan_banan_ Посмотреть сообщение
А вообще крутые посоны делают скрытие клавиатуры по тапу на любое свободное место (согласно гайдам ios) Для этого юзаешь класс жестов UIGestureTap. https://developer.apple.com/library/...Reference.html
Спасибо, буду как крутой посан =)
Yandex
Объявления
16.09.2013, 15:45     Клавиатура в приложении
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru