restricciones recuerdo qué parental olvide modo invitado hacer eliminar código control como codigo borrar ios height constraints autolayout

recuerdo - restricciones ios 12



Cambiar la restricción de altura mediante programación (1)

Quiero cambiar la restricción de altura de un UITextView programáticamente así que establecí la restricción como una salida en mi controlador de esta manera:

@property (strong, nonatomic) IBOutlet NSLayoutConstraint *descriptionHeightConstraint;

Para cambiarlo, hago lo siguiente:

self.descriptionHeightConstraint.constant = self.description.contentSize.height;

Esto funciona si lo hago en viewDidAppear pero el problema con esto es que puedo ver cómo cambia la altura después de la vista que no es muy amigable, así que intenté hacerlo en viewWillAppear pero no funcionó allí, la altura no t cambio. Llamar a setNeedsUpdateConstraints después de cambiar la restricción tampoco funcionó.

¿Por qué funciona en viewDidAppear y no en viewWillAppear? Cualquier solución?

¡Gracias por adelantado!


Intente establecer la constante en viewDidLayoutSubviews en viewDidLayoutSubviews lugar.

Tenga en cuenta que el uso de la propiedad contentSize de la vista de texto para establecer la altura de la vista de texto no funciona en iOS 7. Consulte https://.com/a/18837714/1239263.