Android: EditText activa automáticamente el teclado, ¿cómo detenerlo?

Tengo un EditText simple sobre un ListView definido abajo.

Cuando se ejecuta la aplicación, se selecciona EditText y aparece el teclado.

No quiero que eso suceda. No quiero que se seleccione o el teclado aparezca de forma predeterminada.

 <EditText android:id="@+id/search_box" android:layout_width="fill_parent" android:layout_height="wrap_content" android:hint="type to search titles" android:inputType="text" android:maxLines="1" android:capitalize="none" android:linksClickable="false" android:autoLink="none" android:autoText="true" android:singleLine="true" /> <ListView android:id="@+id/DetailsListView" android:layout_width="fill_parent" android:layout_height="0dip" android:layout_weight="1" android:background="@color/transparent" android:cacheColorHint="@color/transparent" android:listSelector="@drawable/list_selector" android:fastScrollEnabled="true" /> 

Primero la etiqueta es monodroid así que está en C # así que la respuesta aceptada es correcta.

Pero no es lo que creo que el autor quiere … este truco sólo ocultar el teclado, pero el editText todavía tiene el foco.

Para hacer esto tanto en java como en c #, debes poner esto en tu raíz Layout:

 android:descendantFocusability="beforeDescendants" android:focusableInTouchMode="true" 

Por ejemplo :

 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@color/white" android:descendantFocusability="beforeDescendants" android:focusableInTouchMode="true" > .... </LinearLayout> 

He encontrado que esta es la solución:

 Window.SetSoftInputMode (SoftInput.StateAlwaysHidden); 

Nota: Esto está en C # no Java para Android

Añadir esto en onCreate

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

Probar esto en el diseño

 <EditText android:id="@+id/myid2" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_below="@id/myid1" android:clickable="true" android:cursorVisible="false" android:focusable="false" android:hint="@string/hint" android:singleLine="true" android:textColor="@color/black" android:textSize="15dp" /> 

Y esto en su código

  myEditText.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) { if (event.getAction() == MotionEvent.ACTION_UP) { //do tasks } return false; } }); 

No sé si es de cualquier uso. Ni siquiera sé lo que hace. Pero resolvió un problema similar para mí. Sry si pierdo tu tiempo

  • Emulador de Android no se ejecuta - Visual Studio 2017
  • SplashScreen con la imagen PNG conduce a Android.Views.InflateException seguido de OutOfMemory
  • Xamarin "Aapt.exe" salió con el código -1073741819
  • ¿Cuál es la contraparte de iOS 'QLPreviewController o UIDocumentInteractionController en Android?
  • Card.io Mono para Android (Xamarin Studio)
  • Async / esperar malas prácticas bajo Android?
  • ¿Es posible especificar dinámicamente el nombre del paquete durante la compilación?
  • VM con la versión 1.6.0 no tiene soporte multidex: No se puede encontrar la aplicación Mono.Android.Platform.ApiLevel_23 o Xamarin.Android.Platform
  • Cómo obtener errores al ejecutar la aplicación xamarin.android
  • Clase de clase de aplicación personalizada en Mono para Android
  • ¿Cómo funciona Mono para Android?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.