¿Hay alguna forma de cambiar Android: valor de windowSoftInputMode de la clase java?

Quiero actuar en mis tabs para tener diferentes propiedades de windowSoftInputMode para cada pestaña. ¿Cómo acceder a esta propiedad desde la clase java cuando todo el manejo de su pestaña se realiza desde una sola actividad?

¿Hay alguna forma de acceder a esta propiedad manifiesta desde el código java?

Use lo siguiente para cambiar el SoftInputMode para una actividad.

 getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN); 

Use lo siguiente para cambiar el tipo de SoftInput para un EditText.

 mEditText.setImeOptions(EditorInfo.IME_ACTION_DONE); 

Gracias a @Eliezer por la corrección

Según el comentario de Prasham , hice esto y me salvó la vida, ¡gracias a él! Los EditText y SoftWindowInput son bastante SoftWindowInput cuando tienes un diseño con ScrollView y lo estás rellenando dinámicamente.

Como había pasado por esta publicación pero había seguido leyendo otras respuestas / comentarios (como la de Prashan), decidí escribirla en una nueva publicación.

Debajo del código que utilicé con mi ScrollView :

 Activity.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN); 

Mi objective es usar dos modos diferentes para tabs. Los modos son SOFT_INPUT_ADJUST_RESIZE y SOFT_INPUT_ADJUST_NOTHING .

 getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE); 

La línea de código anterior simplemente no funciona por sí misma. La aplicación siempre se comporta en un estado ADJUST_NOTHING . Sin embargo, si se windowSoftInputMode="adjustResize" en la etiqueta en el archivo AndroidManifest.xml, la ventana de la aplicación se redimensiona de manera predeterminada. Además, cuando llamas a la siguiente línea

 getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_NOTHING); 

se comportará como se espera y nada se redimensiona.

Mejora de PS a la respuesta

Puede usar el siguiente código programáticamente

 android.view.inputmethod.InputMethodManager imm = (android.view.inputmethod.InputMethodManager) context .getSystemService(Context.INPUT_METHOD_SERVICE); imm.hideSoftInputFromWindow(myEditText.getWindowToken(), 0); 

Gracias Deepak