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

Программирование Android

Войти
Регистрация
Восстановить пароль
 
fraley
106 / 106 / 40
Регистрация: 24.05.2015
Сообщений: 322
#1

Show and hide keyboard - Программирование Android

17.04.2016, 13:45. Просмотров 253. Ответов 3
Метки нет (Все метки)

Ситуация такая - имеется активити, на котором FrameLayout и в котором происходят транзакции с фрагментами.
Первый фрагмент Login. На нем ввожу пароль и делаю replace на следующий фрагмент с ListView. С того фрагмента есть возможность перейти еще на несколько фрагментов. При всех транзакциях, когда перехожу с логина или возвращаюсь на фрагмент с ListView клавиатура не пропадает. Только после нажатия на кнопку Back клавиатура закрывается. Соответственно там где хочу чтоб клавиатура появилась - не появляется.
Все что находил в гугле не помогает. Причем на эмуляторе Genymotion все работает, а на двух физических аппаратах на которых проверял происходит вышеописанная ситуация.
На всякий случай перечислю что пробовал:
1
Java
1
2
3
4
5
6
7
8
private void hideKeyboard(){
        final InputMethodManager inputMethodManager=(InputMethodManager)getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
        View v = ((Activity) getContext()).getCurrentFocus();
        if (v == null)
            return;
        inputMethodManager.hideSoftInputFromWindow(v.getWindowToken(), 0);
        
   }
2 - заменял код в функции hideKeyboard на этот - не помогло
Java
1
getActivity().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
3 - добавлял в манифест в мое активити:
XML
1
 android:windowSoftInputMode="stateHidden"
4- помещал этот код в onActivityCreated
Java
1
2
final InputMethodManager inputMethodManager = (InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE);
        inputMethodManager.hideSoftInputFromWindow(getView().getWindowToken(), 0);
Собственно - куда копать? Может упускаю какой-то момент(код) который оставляет клавиатуру открытый при транзакциях с фрагментами?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.04.2016, 13:45
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Show and hide keyboard (Программирование Android):

AutoShow keyboard in AlertDialog - Программирование Android
Доброго дня :senor: Не могу добиться чтобы при появлении alertdialog'а автоматически появлялась клавиатура, на stackoverflow много...

Бар show телефона - Программирование Android
Как убpать веpхний баp телефона?!

hide и show в Opere - JavaScript
Помогите пожалуйста, я уже голову сломала. У меня iframe, с ссылкой работающего радио, который мне нужно скрыть и при необходимости...

Функция .show hide - jQuery
Всем привет. Сразу скажу, что в jquery и javascript я не разбираюсь. Дана вот такая кнопка <input type="button" class="b1c buybtn"...

.show & .hide - jQuery
Здравствуйте! Есть 2 div'a. Один, допустим "attack" открыт, а другой - "guard" скрыт стилем "display: none". Нужно, чтобы <div...

SetCursor + javafx + show/hide - JavaFX
Есть окно, на котором имеется сцена с scene.setCursor(Cursor.CROSSHAIR); Окно открывается по хоткею (глобальному хоткею), и...

3
Pablito
2478 / 1962 / 611
Регистрация: 12.05.2014
Сообщений: 6,870
Завершенные тесты: 1
17.04.2016, 14:59 #2
почему просто не прятать клавиатуру в коде?
там де идет проверка корректности ввода логина/пароля и если все правильно то перед педалированием фрагментами - прячем клавиатуру
1
fraley
106 / 106 / 40
Регистрация: 24.05.2015
Сообщений: 322
17.04.2016, 15:17  [ТС] #3
Паблито, пробовал.
Размещал вызов функции hideKeyboard в фрагменте Login перед переходом на другой фрагмент.
Все тоже самое. Не закрывается.

Добавлено через 13 минут
Все, разобрался.
В фрагменте Login просто не там размещал вызов функции.
Паблито, был прав - клавиатуру надо закрывать с того фрагмента, откуда переходишь.
Почему код не работает на том фрагменте, куда переходишь?
0
YuraAAA
1576 / 1317 / 271
Регистрация: 25.10.2009
Сообщений: 3,438
Записей в блоге: 2
17.04.2016, 17:38 #4
fraley, мб потому что токен невалидный становится уже.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.04.2016, 17:38
Привет! Вот еще темы с ответами:

Не работают методы .hide(); и .show(); - jQuery
Здравствуйте. Почему данные методы не отрабатывают на формах? <div class="col-lg-6 col-md-6 col-sm-6 col-xs-6 highheader2"> ...

Show/hide при клике - jQuery
Начинаю веикать в jquery. Вот какая проблемма: нужно при клике на елемент показать контейнер и добавить к нему класс active. При втором...

show/hide в зависимости от условия - jQuery
Последний раз у меня была проблема с выводом чекбоксов в дереве, но я разобралась с помощью in_array. Сейчас вот думаю, как сделать так,...

Show и Hide вопрос о них - Delphi
Здравствуйте...у меня не переходит на другую форму(( упорно пишет эту хню Could not create output file 'C:\Documents and...


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

Или воспользуйтесь поиском по форуму:
4
Yandex
Объявления
17.04.2016, 17:38
Ответ Создать тему
Опции темы

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