textinputedittext studio enable edittext disabled disable bloquear android android-edittext disabled-input

studio - edittext disabled android



Cómo deshabilitar EditText en Android (14)

Creo que es un error en Android ... Se puede solucionar agregando este parche :)
Revisa estos enlaces pregunta 1 y pregunta 2

Espero que sea de utilidad.

¿Cómo puedo deshabilitar la escritura en un campo EditText en Android?


El siguiente código desactiva el EditText en Android

editText.setEnabled(false);


En codigo:

editText.setEnabled(false);

O, en XML:

android:editable="false"


Escribe esto en el padre:

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

Ejemplo:

<RelativeLayout android:id="@+id/menu_2_zawezanie_rl" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@+id/menu_2_horizontalScrollView" android:descendantFocusability="beforeDescendants" android:focusableInTouchMode="true" android:orientation="horizontal" android:background="@drawable/rame"> <EditText android:id="@+id/menu2_et" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_centerVertical="true" android:layout_toLeftOf="@+id/menu2_ibtn" android:gravity="center" android:hint="@string/filtruj" > </EditText> <ImageButton android:id="@+id/menu2_ibtn" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_centerVertical="true" android:background="@null" android:src="@drawable/selector_btn" />


Habilitar:

private void enableEditText() { mEditText.setFocusableInTouchMode(true); mEditText.setFocusable(true); mEditText.setEnabled(true); }

Inhabilitar:

private void disableEditText() { mEditText.setEnabled(false); mEditText.setFocusable(false); mEditText.setFocusableInTouchMode(false); }


Para deshabilitar un texto de edición en Android:

editText.setEnabled(false);


Puede escribir edittext.setInputType(0) si desea mostrar el edittext pero no ingresar ningún valor


Puedes probar el siguiente método:

private void disableEditText(EditText editText) { editText.setFocusable(false); editText.setEnabled(false); editText.setCursorVisible(false); editText.setKeyListener(null); editText.setBackgroundColor(Color.TRANSPARENT); }

Habilitado EditText:

EditText deshabilitado:

Funciona para mí y espero que te ayude.


Según yo ... si ya ha declarado el edittext de edittext en el archivo XML y ha configurado la propiedad en el archivo XML "android:enabled=false" y deshabilítelo en el tiempo de ejecución en ese momento en el archivo java agregando solo 2 o 3 líneas

  1. Primero crea el objeto
  2. Declare EditText et1;
  3. Conseguir por id

    et1 = (EditText) FindViewById(R.id.edittext1);
    et1.setEnabled(false);

Puede habilitar o deshabilitar todos los controles en tiempo de ejecución por archivo java y tiempo de diseño por archivo XML.


Solo establece la propiedad enfocable de tu texto de edición en "falso" y listo.

<EditText android:id="@+id/EditTextInput" android:layout_width="fill_parent" android:layout_height="wrap_content" android:focusable="false" android:gravity="right" android:cursorVisible="true"> </EditText>

Las siguientes opciones no funcionan

En codigo:

editText.setEnabled(false); O, en XML: android:editable="false"


Suponiendo editText es su objeto EditText :

editText.setEnabled(false);


puede usar EditText.setFocusable(false) para deshabilitar la edición
EditText.setFocusableInTouchMode(true) para habilitar la edición;


edittext.setFocusable(false); edittext.setEnabled(false); InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); imm.hideSoftInputFromWindow(edittext.getWindowToken(), 0); //removes on screen keyboard


Edittext edittext = (EditText)findViewById(R.id.edit); edittext.setEnabled(false);