Intereting Posts
OnClickListener – x, y местоположение события? Android: Как определить ориентацию изображения (портрет или пейзаж), выбранный из галереи при настройке изображения? Android Device Monitor File Explorer не работает с эмулятором, работающим с API 24+ Android, как исправить ориентацию камеры Как я могу скомпилировать Dalvik для локального запуска Linux? Android: получите текущее местоположение от лучшего поставщика Предоставляйте бесплатные услуги более ранним покупателям База данных SQLite для базы данных SQLite с индексом 2048 кб не выполнена Как установить минимальную дату DatePicker на текущую дату Не могу найти причину моего сбоя с этой трассировкой стека Facebook onCompleted Email java.lang.NullPointerException Полный список Cocos2d-x Tutorial & Guide List Как автоматически увеличить автоматически текущее местоположение в карте Google api для Android? Маленький EditText имеет setError с большим количеством строк Как использовать карту google V2 внутри фрагмента?

Force soft keyboard, чтобы показать, когда EditText получает фокус

У меня есть EditText, что я делаю фокус программно. Но когда я это делаю, я хочу, чтобы клавиатура также отображалась (и затем спускайтесь, когда этот EditText теряет фокус). Прямо сейчас пользователь должен щелкнуть по EditText, чтобы отобразить клавиатуру – даже подумал, что EditText уже имеет фокус.

Solutions Collecting From Web of "Force soft keyboard, чтобы показать, когда EditText получает фокус"

Вот как я показываю ketyboard:

EditText yourEditText= (EditText) findViewById(R.id.yourEditText); InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); imm.showSoftInput(yourEditText, InputMethodManager.SHOW_IMPLICIT); 
 <activity android:name=".YourActivity" android:windowSoftInputMode="stateVisible" /> 

Добавьте это в файл манифеста …

Чтобы показать клавиатуру, используйте следующий код.

 InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); imm.showSoftInput(et, InputMethodManager.SHOW_IMPLICIT); 

Чтобы скрыть клавиатуру, используйте код ниже. Et – ссылка на EditText

 InputMethodManager imm = (InputMethodManager)getActivity().getSystemService(getActivity().INPUT_METHOD_SERVICE); imm.hideSoftInputFromWindow(et.getWindowToken(), 0); 

Установите для своей активности в вашем манифесте клавиатуру поп-клавиатуры автоматически, когда на экране появляется окно EditText

 <activity android:windowSoftInputMode="stateAlwaysVisible" ... /> 

Чтобы скрыть клавиатуру при потере фокуса, установите OnFocusChangeListener для EditText.

В onCreate ()

 EditText editText = (EditText) findViewById(R.id.textbox); OnFocusChangeListener ofcListener = new MyFocusChangeListener(); editText.setOnFocusChangeListener(ofcListener); 

Добавить этот класс

 private class MyFocusChangeListener implements OnFocusChangeListener { public void onFocusChange(View v, boolean hasFocus){ if(v.getId() == R.id.textbox && !hasFocus) { InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); imm.hideSoftInputFromWindow(v.getWindowToken(), 0); } } } 

Чтобы сделать это на основе прослушивателя фокуса, вам необходимо:

 final InputMethodManager imm =(InputMethodManager)context.getSystemService(Context.INPUT_METHOD_SERVICE); editText.setOnFocusChangeListener(new OnFocusChangeListener() { @Override public void onFocusChange(View v, boolean hasFocus) { if(hasFocus){ imm.showSoftInput(et, InputMethodManager.SHOW_IMPLICIT); }else{ imm.hideSoftInputFromWindow(et.getWindowToken(), 0); } imm.toggleSoftInput(0, 0); } }); 

Надеюсь это поможет.

С уважением!