Le calcul de contentSize pour UIScrollView lors de l'utilisation de Mise en page Automatique

Voici une petite question à propos de quelque chose qui fonctionne, mais qui pourrait être écrit beaucoup mieux. J'ai un UIScrollView et une liste des objets placés à l'intérieur, l'une sous l'autre. Tout est fait au cours de viewDidLoad() et le placement des objets utilise Auto Layout. Voici ce que je fais pour régler le contentSize hauteur de la UIScrollView à sa valeur appropriée.

override func viewDidAppear(animated: Bool) {
    super.viewDidAppear(animated)
    globalView.contentSize = CGSize(width: globalView.frame.width,
                                    height: globalView.frame.height * 1.59)
}

Il fonctionne, mais la valeur arbitraire de 1,59 a évidemment été décidé par moi-même en essayant un peu de valeurs possibles. Quelle est la bonne manière de calculer l'contentSize dans un tel cas? Je suis tout a fais de la programmation.
Recherche sur le net ne m'a pas entraîné toute simple et claire réponse, donc eventhough il peut être un peu double question, j'ai décidé de le reformuler.

Vous pouvez trouver beaucoup de réponses sur le même sujet sur la définition de la contrainte à la UIScrollView. Si vous définissez les contraintes correctement à tous les composants à l'intérieur de UIScrollView alors vous n'auriez pas besoin de définir la taille constante par programmation. Voir ce lien expliquant la même stackoverflow.com/questions/35624873/...
Vrai, mais la plupart (tous) d'entre eux suppose que vous utilisez storyboard 🙂
Si vous ajoutez des sous-vues de code, vous pouvez probablement juste aller à la Taille de l'Inspecteur, sélectionnez l'Ambiguïté->ne Jamais Vérifier en bas.
Pela : C'était il y a longtemps, mais de toute façon voir ma solution préférée, si vous êtes intéressé. Recherchez AutoLayScroll dans l'une des réponses ci-dessous.

OriginalL'auteur Michel | 2016-08-15