Estoy desarrollando una aplicación para iOS y estoy usando Storyboard con AutoLayout ON. Uno de mis controladores de vista tiene un conjunto de 4 botones y, en determinadas circunstancias, me gustaría hacer desaparecer el primero.
Si utilizo el setHidden:TRUE
método, el UIButton se vuelve invisible pero obviamente todavía ocupa espacio en la vista, y el resultado es un "agujero" que no he podido llenar haciendo que el UIButton restante flote hacia la parte superior de la vista principal.
En Android, simplemente lo hubiera usado en View.GONE
lugar de View.INVISIBLE
, pero en iOS estoy atascado con este comportamiento y no quiero creer que la única solución es mover manualmente (sí, me refiero a programación) los elementos restantes a la parte superior.
Pensé que habría podido hacerlo estableciendo algún tipo de restricción para que todo fuera tan automático como en Android, pero no tuve suerte.
Antes de desactivar el diseño automático, ¿alguien puede indicarme la dirección correcta?
Estoy usando el IB, pero también me siento cómodo con las cosas programáticas.
ACTUALIZAR:
Establecer la altura del componente en 0 tampoco ayuda.
Intenté algo como esto:
UIButton *b;
CGRect frameRect = b.frame;
frameRect.size.height = 0;
b.frame = frameRect;