Ocultar o mostrar elementos en Android

En este post te mostraré a ocultar y mostrar vistas o elementos del layout en Android de manera programada utilizando el método setVisibility para modificar la visibilidad de una View.

Voy a mostrarte cómo hacerlo desde Java invocando al método setVisibility y pasando las constantes INVISIBLE, VISIBLE y GONE de View.

Mostrar un elemento

Cuando ya tenemos un elemento obtenido con findViewById invocamos a setVisibility con View.VISIBLE:

etObservacionesSituacionEntrega.setVisibility(View.VISIBLE);

De este modo el elemento se va a mostrar.

No olvides importar a View:

import android.view.View;

Ocultar un elemento usando GONE o INVISIBLE

Para ocultar un elemento en Android se invoca al mismo método, y ahora se puede usar GONE o INVISIBLE.

La diferencia entre estos es que:

  • GONE: el elemento se oculta, y además, no ocupa espacio en el layout.
  • INVISIBLE: el elemento se oculta pero sigue ocupando el espacio

Así que lo recomendable es usar GONE como en el siguiente ejemplo:

etObservacionesSituacionEntrega.setVisibility(View.GONE);

Ocultar o mostrar elemento desde XML

Estas propiedades pueden ser definidas desde XML al definir el layout a través de android:visibility. Por ejemplo:

<EditText
android:id="@+id/etObservacionesSituacionEntrega"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_marginTop="8dp"
android:layout_marginEnd="8dp"
android:ems="10"
android:gravity="start|top"
android:hint="@string/observaciones"
android:inputType="textMultiLine"
android:lines="3"
android:visibility="gone"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/spinnerSituacionesEntrega"
tools:visibility="visible" />

Fíjate en la línea 13, en ella defino que inicialmente el elemento no se muestra ni ocupa espacio. Pero como al diseñar quiero que sí se vea, especifico tools:visibilty en visible para que se muestre en tiempo de diseño.

 

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *