2010-06-14 16 views

Respuesta

91

Sé que esto es viejo, pero tal vez va a ayudar a alguien en el futuro ...

no he visto a nadie sugiere "stateHidden"

From the Android docs - android:windowSoftInputMode

su archivo de manifiesto se vería así:

<activity 
    ... 
    android:windowSoftInputMode="stateHidden|adjustResize" 
    ... 
> 
+3

esto es más sencillo y directo. – Robert

2

¿Funciona el siguiente trabajo?

// Find editor 
EditText editWindowInstance = this.findViewById(R.id.MyEditWindow); 

// close soft keyboard 
((InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE)).hideSoftInputFromWindow(editWindowInstance.getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS); 
+0

No, no funciona. – Adnan

+0

¿Qué le parece usar "hideSoftInputFromWindow (editWindowInstance, ...)" en lugar de "editWindowInstance.getWindowToken()"? –

18

Usted puede usar la siguiente línea de código para asegurarse de que el teclado sólo aparece cuando un usuario hace clic en un EditarTexto

this.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN); 

Y

Es necesario añadir

android: windowSoftInputMode = "adjustResize"

a su etiqueta de actividad en el archivo AndroidManifest.xml.

+0

Esto funciona, pero cuando hago clic en el cuadro de texto para escribir, el teclado aparece sobre el cuadro de texto y no puedo ver lo que estoy escribiendo. El cuadro de texto está en la parte inferior de la pantalla. – Adnan

+0

Necesita agregar android: windowSoftInputMode = "adjustResize" a su etiqueta en el archivo AndroidManifest.xml. –

+0

android: windowSoftInputMode = "adjustResize" se establece en AndroidManifest.xml pero sigue siendo el mismo problema. También hay un botón en la misma pantalla. Intenté mover el foco al botón usando: btn.setFocusable (verdadero); btn.requestFocus(); Pero aún así el foco está en TextView. No sé lo que estoy haciendo mal. – Adnan

0

El siguiente código funciona para mí

((InputMethodManager) iClockActivity 
        .getSystemService(Context.INPUT_METHOD_SERVICE)) 
        .showSoftInput(textView, 0); 
+0

Intenté esto, pero sigue siendo el mismo problema. – Adnan

0

Esto funciona perfectamente, prueba este

this.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN); 

Y añada lo siguiente a su manifiesto.

android:windowSoftInputMode="stateHidden|adjustResize" 

aplausos disfrutan de codificación ....

1

Usted puede poner este código en tu Activity.onCreate:. this.getWindow() setSoftInputMode (WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);

Pero descubrí que la manera más confiable y limpia era simplemente para establecer el foco en un punto de vista diferente, en su actividad de diseño XML

<Button 
    android:id="@+id/mybutton"> 
    <requestFocus /> 
</Button> 
Cuestiones relacionadas