En Android, cada View
subclase tiene un setVisibility()
método que le permite modificar la visibilidad de un View
objeto
Hay 3 opciones para configurar la visibilidad:
- Visible: renderiza lo
View
visible dentro del diseño. - Invisible: Oculta el
View
, pero deja un espacio equivalente al queView
ocuparía si fuera visible. - Desaparecido: oculta
View
y elimina por completo del diseño. Es como si fueraheight
ywidth
fuera0dp
¿Existe algo equivalente a lo anterior para los widgets en Flutter?
Para una referencia rápida: https://developer.android.com/reference/android/view/View.html#attr_android:visibility
fuente
IgnorePointer
también, de lo contrario, el usuario aún puede activarlo.Invisible : el widget ocupa espacio físico en la pantalla pero no es visible para el usuario.
Desaparecido : el widget no ocupa ningún espacio físico y desapareció por completo.
Ejemplo invisible
Ido ejemplo
Alternativamente, puede usar
if
condición para invisible y desaparecido.fuente
Colaborar con la pregunta y mostrar un ejemplo de cómo reemplazarla con un vacío
Container()
.Este es el ejemplo siguiente:
fuente
Flutter ahora contiene un widget de visibilidad que debes usar para mostrar / ocultar widgets. El widget también se puede utilizar para cambiar entre 2 widgets cambiando el reemplazo.
Este widget puede lograr cualquiera de los estados visible, invisible, desaparecido y mucho más.
fuente
Prueba el
Offstage
widgetsi el atributo
offstage:true
no ocupa el espacio físico e invisible,si atributo
offstage:false
ocupará el espacio físico y visiblefuente
fuente
En flutter 1.5 y Dart 2.3 para la visibilidad perdida, puede establecer la visibilidad utilizando una declaración if dentro de la colección sin tener que hacer uso de contenedores.
p.ej
fuente
Puede encapsular cualquier widget en su código con un nuevo widget llamado (Visibilidad), esto es desde la lámpara amarilla en el lado izquierdo del widget que desea que esté invisible
ejemplo: digamos que quiere hacer una fila invisible:
El elemento secundario del widget recién creado (widget de visibilidad) es el widget que desea que sea invisible
Espero que ayude a alguien en el futuro
fuente
Para principiantes, pruebe esto también.
fuente
Actualizar
Flutter ahora tiene un widget de visibilidad . Para implementar su propia solución, comience con el siguiente código.
Haz un widget tú mismo.
mostrar ocultar
mostrar / eliminar
Por cierto, ¿alguien tiene un mejor nombre para los widgets anteriores?
Más lecturas
fuente
Como ya lo destacó @CopsOnRoad, puede usar el widget Visibilidad. Pero, si desea mantener su estado, por ejemplo, si desea construir un visor y hacer que un determinado botón aparezca y desaparezca en función de la página, puede hacerlo de esta manera.
fuente
Tal vez puedas usar la función Navigator así
Navigator.of(context).pop();
fuente
Una solución es establecer esta propiedad de color del widget en Colors.transparent. Por ejemplo:
fuente
IconButton
todavía recibe clic y ocupa espacio. Por favor, edite o elimine esta respuesta antes de que la gente la rechace.