J'ai été capable de trouver la réponse. J'ai dû changer la priorité à 999 sur la contrainte de largeur du bouton d'arrêt. Le message de débogage disait que les contraintes ci-dessous étaient en conflit.
(
"<NSLayoutConstraint:0x600000096080 UIButton:0x7fb874e157d0.width == 64 (active)>",
"<NSLayoutConstraint:0x610000097ac0 'fittingSizeHTarget' UIStackView:0x7fb874e155d0.width == 0 (active)>",
"<NSLayoutConstraint:0x600000096210 'UISV-canvas-connection' UIStackView:0x7fb874e155d0.leading <= UIButton:0x7fb874e157d0.leading (active)>",
"<NSLayoutConstraint:0x600000097ca0 'UISV-canvas-connection' UIStackView:0x7fb874e155d0.centerX == UIButton:0x7fb874e157d0.centerX (active)>"
)
Ensuite, il a dit qu'il fallait briser la contrainte largeur du bouton d'arrêt afin de résoudre le problème des contraintes contradictoires. La suppression de la priorité à 999 a empêché l'apparition du message de débogage et a permis de conserver les boutons si je le souhaitais.
Je trouve les informations de solution ici:
https://developer.apple.com/library/content/documentation/UserExperience/Conceptual/AutolayoutPG/DebuggingTricksandTips.html
[À partir du lien] de ces contraintes, le dernier a été créé par le système. Vous ne pouvez pas le changer. De plus, cela crée un conflit évident avec la première contrainte. Si vous n'avez que 320 points de large, vous ne pourrez jamais avoir une étiquette de 400 points. Heureusement, vous n'avez pas à vous débarrasser de la première contrainte. Si vous déposez sa priorité sur 999, le système essaie toujours de fournir la largeur sélectionnée, en se rapprochant le plus possible tout en respectant les autres contraintes.
Première hauteur de retrait: 64 pour la dernière pile Visualisez –
@jaydeepVyas alors la pile de départ prendra la moitié de l'écran. –
J'ai donné réponse ci-dessous voir que –