2010-10-07 6 views
3

Si je définis la hauteur de UIScrollView sur self.view.frame.size.height et setAutoresizingMask:UIViewAutoresizingFlexibleHeight puis lorsque la vue charge UITabBarController et UINavigationBar, la vue de défilement se redimensionne pour convenir.UIScrollView autoresizing contenu?

Cependant, la taille du contenu (définie à: self.view.frame.size.height) ne change pas. Assez juste je suppose - je ne peux pas sembler trouver une option autoresizing pour cela, alors pourquoi serait-il autoresize. Mon problème est de simplement définir la taille du contenu comme inférieure à la hauteur du cadre, donc le contenu sera toujours la hauteur de la trame. (Par exemple: définir la hauteur du contenu à 10 points).

Je me demandais si c'était la meilleure façon de procéder, ou s'il y avait une meilleure façon de procéder? Je fais ce code dans viewDidLoad.

Merci

Tom

Répondre

5

de propriété contentSize de la UIScrollView définissent la taille de la vue affichée pour Span & Zoom. Il n'a normalement aucune relation avec la taille du conteneur (par exemple, scrollview), mais si vous avez vraiment besoin de redimensionner le contenu en fonction de la taille du défilement, vous pouvez surcharger la méthode layoutSubViews pour ce faire.

+0

ok ... c'est une bonne réponse. :) est-il possible de définir la taille du contenu APRÈS l'affichage de la vue entière? c'est-à-dire: après l'affichage de la barre de navigation et de la barre d'onglets? ie2: une méthode afterViewDidAppear ou quelque chose. –

+0

Pourquoi voudriez-vous faire quelque chose comme ça au lieu de le redimensionner à chaque fois que le scrollView est redimensionné? – VdesmedT