TextInputLayout habilitado no guardado después de destruir y volver a crear

Diseño simple:

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.infinitebounds.myapplication.Main2Activity"> <android.support.design.widget.TextInputLayout android:id="@+id/tip" android:layout_width="match_parent" android:layout_height="match_parent"> <EditText android:id="@+id/et" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="hint" /> </android.support.design.widget.TextInputLayout> </LinearLayout> 

Y estoy desactivando el textInputLayout si la actividad se inicializa por primera vez:

 class Main2Activity : AppCompatActivity() { lateinit var tip: TextInputLayout lateinit var et: EditText override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main2) tip = findViewById(R.id.tip) as TextInputLayout et = findViewById(R.id.et) as EditText if (savedInstanceState == null) tip.isEnabled = false } } 

He marcado la opción "No mantener actividades".

Entonces, inicialmente, cuando se inicia la actividad, TextInputLayout está deshabilitado. Cuando presiono inicio y vuelvo, se vuelve a habilitar nuevamente.

Entonces mis preguntas son:

  1. Es este el comportamiento esperado?
  2. ¿Cómo mantengo TextInputLayout deshabilitado cuando se recrea?

Editar:

Esto parece suceder con EditText también.

Es este el comportamiento esperado?

Sí, lo es (suponiendo que "Do not Keep Activities" está marcado).

La primera vez que se lanza la aplicación, savedInstanceState es nula: su verificación if pasa y establece el estado de TextInputLayout en deshabilitado.

Tan pronto como presiona el button de inicio y regresa, se onCreate() , pero esta vez savedInstanceState no es nulo: su verificación if no pasa.

¿Cómo mantengo TextInputLayout deshabilitado cuando se recrea?

Deshágase de if control es completo, es inútil. Ejecute tip.isEnabled = false directamente dentro de onCreate() , o realice eso en xml : android:enabled="false" .

  • El uso de la function de lectura de AudioRecord en Kotlin no coincide con los arguments de los types de plataforma
  • El cliente de Bluetooth Socket recibe la misma exception cada vez
  • ¿Hay una MutableList instanciable en Kotlin, evitando Java api?
  • Spring Boot @ Autoajustado con Kotlin en @Service siempre es nulo
  • Kotlin y javax.validation.constraints.NotNull
  • Emitir no seleccionado al lanzar un object de tipo Cualquiera? en una lambda en kotlin
  • Cómo `continue` o` break` en una instrucción `when` dentro de un ciclo` while` usando Kotlin
  • La variable de instancia de Kotlin es nula cuando se accede por la class proxied de Spring