create ios swift uiview

ios - create - ¿Cómo se muestra u oculta una subvista usando swift



uikit swift 4 (4)

Así que creé ViewControl en mi storyboard que tiene 3 subvistas. Cada uno representa una vista diferente que quiero mostrar dependiendo de qué fila de la tabla se seleccionó en la pantalla anterior (NavControl). Comienzo con todas las subvistas ocultas mediante el atributo "oculto" del inspector de atributos que se comprueba. Todos los objetos dentro de cada una de estas vistas NO están ocultos, pero se ocultan porque la subvista misma está oculta (obviamente). Pensando que podría usar el atributo de etiqueta, le di una etiqueta a cada una de las tres subvistas (0, 1 y 2), pero tampoco sé cómo usar eso (en caso de que sea útil, ya que me da una opción). de cómo hacer esto, quería mencionarlo aquí).

Entonces, ¿cómo diablos puedo mostrar y luego ocultar cualquiera de estas subvistas? No quiero pasar por cada objeto en una subvista y alternar su propiedad oculta a verdadero / falso. Siento que debería ser capaz de ''mostrar / ocultar'' toda la subvista. logrando el mismo resultado, pero mucho más sucintamente.

No puedo encontrar nada que me ayude mediante búsquedas web o búsquedas de stackoverflow.

Mi código es muy simple. Capturo la fila que se seleccionó en la pantalla anterior y la paso a una variable en la pantalla de detalles que contiene las subvistas. Sé que esto funciona porque he configurado println () en las pantallas de detalles de la función viewDidLoad. Así que ahora todo lo que tengo que hacer es analizar cada una de estas condiciones y decirle qué subvista mostrar y / o ocultar.

¡Gracias, aprecio que todas estas comunidades ayuden! Estaría perdido sin eso.


Si tiene etiquetas para cada vista, puede ocultarlas y mostrarlas usando:

C objetivo

Para ocultar:

[[self.view viewWithTag:1] setHidden:YES];

Demostración:

[[self.view viewWithTag:1] setHidden:NO];

En Swift:

Ocultación:

self.view.viewWithTag(1)?.hidden = true

Demostración:

self.view.viewWithTag(1)?.hidden = false

NOTA: Reemplace 1 con su valor de etiqueta.


Debe crear IBOutlet s para cada una de las tres subvistas. Luego puede mostrar / ocultar cada uno de ellos directamente de esas referencias. Si oculta una vista, ocultará automáticamente sus subvistas.


Use esto para ocultar una vista en swift 3.0

viewVar.isHidden = true


sin embargo, el hecho de que isHidden es una convención de nomenclatura para verificar el estado y es un método getter, pero a pesar de que en breve lo usamos como propiedad setter y getter

view.isHidden = true