Извините, что в другой раз попросил помощи по этому поводу, но все остальные сообщения не помогли.
Вот сценарий: у меня есть активность («А»), которая включает макет с фрагментом внутри. Этот фрагмент заменяется при вводе пользователем. Один из этих фрагментов имеет внутри текст редактирования, на создании которого я хочу сфокусироваться и показать чертову мягкую клавиатуру. Итак, в onCreateView () фрагмента, который я использую:
mEt = (EditText) v.findViewById(R.id.et);
mEt.setImeOptions(EditorInfo.IME_ACTION_DONE);
mEt.requestFocus();
Итак, он работает в первый раз, но если фрагмент заменяется и создается заново позже, он получает фокус, но клавиатура не появляется.
Я пытался скрыть клавиатуру до того, как фрагмент будет уничтожен с помощью:
InputMethodManager keyboard = (InputMethodManager)
ctx.getSystemService(Context.INPUT_METHOD_SERVICE);
keyboard.hideSoftInputFromWindow(et.getWindowToken(), 0);
или явно показать клавиатуру с помощью:
InputMethodManager keyboard = (InputMethodManager)
ctx.getSystemService(Context.INPUT_METHOD_SERVICE);
keyboard.showSoftInput(et, 0);
, но (как вы можете себе представить по тому факту, что я публикую здесь :)), проблема осталась .
Я также отчаянно думал о проблеме активности / фрагмента и безуспешно использовал те же методы со слушателями в этой деятельности.
Довольно разочарован, помогите пожалуйста :)