Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Ocultar Soft Keyboard en la aplicación para Android Desde fragmentos de ViewPager

Tengo una aplicación de Android que contiene un ViewPager con 2 fragmentos. El primer fragmento contiene un campo EditText. Cuando se inicia la aplicación, ese campo inmediatamente se centra y se inicia el teclado virtual (que quiero que suceda). El segundo fragmento sólo contiene una lista (sin campos de texto editables). Cuando paso del fragmento 1 al fragmento 2, me gustaría que el teclado desapareciera. Nada de lo que he probado parece funcionar. El teclado no sólo permanece a la vista, sino que continúa actualizando el campo EditText del fragmento 1.

Supongo que estoy utilizando código incorrecto para ocultar el teclado o colocarlo en una ubicación incorrecta. Si alguien puede publicar un ejemplo de la correcta aplicación sería muy apreciado!

  • Ocultar la vista de encabezado en ListView
  • Android: TabHost sin TabActivity
  • ¿Cómo cambio el título e icono de la barra de acciones de Android?
  • Cómo empaquetar sólo el idioma predeterminado con android gradle resConfigs
  • ¿Cómo manejar múltiples oyentes de interacción de fragmentos en una actividad correctamente?
  • Resaltar o subrayar seleccionado TabPageIndicator
  • Mi último intento fue colocar código que debería ocultar el teclado en el método onDetach () del fragmento 1:

    @Override public void onDetach() { super.onDetach(); InputMethodManager imm = (InputMethodManager) this.context.getSystemService(Context.INPUT_METHOD_SERVICE); // I'VE TRIED ALL THREE BELOW, NONE OF THEM WORK... // imm.hideSoftInputFromWindow(this.messageView.getWindowToken(), 0); // imm.toggleSoftInput(InputMethodManager.SHOW_FORCED, 0); // this.context.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN); } 

  • Cómo apoyar los controles de dpad para RecyclerView
  • Iteradores temporales de Java están ralentizando mi Android
  • Native Android WebRTC aplicación de desarrollo
  • ¿Cómo obtener AssetManager sin referencia al contexto?
  • Cómo habilitar la depuración remota / inspector de la aplicación Android de WebKit mediante WebView?
  • No hay debug.keystore en la carpeta .android
  • 3 Solutions collect form web for “Ocultar Soft Keyboard en la aplicación para Android Desde fragmentos de ViewPager”

    Vea esta respuesta. Básicamente, usted necesita tener OnPageChangeListener de su OnPageChangeListener ocultar el teclado para usted. (Si desea que su animación onPageScrollStateChanged mantenga suave, haga esto en onPageScrollStateChanged en lugar de onPageSelected .)

     @Override public void onPageScrollStateChanged(int state) { if (state == ViewPager.SCROLL_STATE_IDLE) { if (mViewPager.getCurrentItem() == 0) { // Hide the keyboard. ((InputMethodManager)getSystemService(INPUT_METHOD_SERVICE)) .hideSoftInputFromWindow(mViewPager.getWindowToken(), 0); } } } 

    En tu AndroidManifest debes añadir a la declaración de actividad android: windowSoftInputMode = "stateHidden":

     <activity android:name="YourActivity" android:windowSoftInputMode="stateHidden"> </activity> 

    Y en su diseño eliminar de los niños de EditText requestFocus:

     <EditText android:id="@+id/editText1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:layout_marginLeft="15dp" android:ems="10" > <requestFocus /> </EditText> 
      getActivity().getWindow().setSoftInputMode( WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN); 
    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.