UIScrollView réglage de la taille de la page dynamiquement
J'ai fait un peu de recherche dans ce mais ont échoué à trouver une solution.
J'ai un UIScrollView appelé scrollView
à l'intérieur de UIView. Je suis en utilisant ce scrollView
dans pagingEnabled mode. À l'intérieur de scrollView
, j'ai 3 points de vue différents créés par programmation. À l'intérieur de ces 3 points de vue différents, j'ai un tas de trucs(UILabel,UITextView etc.). Tous les points de vue contenu est dynamique et déterminé au moment de l'exécution.Donc, je ne sais vraiment pas scrollView.contentSize
. Si je donne la taille du contenu de ce scrollView
,Parfois ,j'ai un écran blanc vide dans le bas de l'écran lorsque l'utilisateur fait défiler vers le bas. Ma question est : Can i set the content size dynamically for each single page of this scrollView
? Par exemple,pour la page 1 :
self.scrollViewNews.contentSize = CGSizeMake(constant1,constant2);
Et quelque chose pour la page 2 .
OriginalL'auteur limon | 2012-08-15
Vous devez vous connecter pour publier un commentaire.
Je pense que vous êtes confus au sujet de
contentSize
vs la taille d'échange. La pagination de la taille est toujours la taille de la scrollView limites, et n'est pas une propriété que vous pouvez le contraire. C'est, lorsque vous balayez vers la gauche/droite, il s' "page" par la largeur de la scrollview.contentSize
est la taille de la mémoire virtuelle de la boîte englobante de toutes les sous-vues au sein de la scrollview. Cela ne sert qu'à limiter la scrollview de défilement, et pour la pagination, combien de fois il faudra la page, c'est à direcontentSize.width /bounds.size.width
.En supposant que la scrollView n'est pas du zoom (zoomScale = 1.0), alors vous avez besoin de la position et de la taille de votre sous-vues sur le virtuel "les limites de la page'. Ils peuvent prendre jusqu'à la pleine limite de la page (être dimensionnés pour correspondre scrollview.de limites) ou être encadré. Si vous avez du contenu qui est plus grande/petite, alors vous aurez à décider si vous souhaitez modifier l'échelle de ce contenu ou de la taille vers le haut/vers le bas à l'intérieur de la page de limites.
OriginalL'auteur TomSwift
Oui, vous pouvez définir dynamiquement la taille du contenu de la scrollView. Vous pouvez également utiliser cette méthode:
Rien de mal à cette méthode. Vous voyez le vide de l'espace, au fond, parce que vous ares réglage de la hauteur de la scrollView de contentSize à une valeur plus importante que son contenu. C'est la question. Régler la hauteur en fonction du contenu, de l'espace vide ira.
OriginalL'auteur Midhun MP
s'il vous plaît, essayez d'obtenir le contenu réel de la taille du contenu actuel.
le contenu doit être une classe héritée de la
UIView
et il a unframe.size.width
etframe.size.height
propriété.vous pouvez les utiliser pour définir la
contentSize
de votreUIScrollview
pour le contenu actuel, à l'époque, lorsque vous ajoutez du contenu à laUIScrollView
.OriginalL'auteur holex
Ouais. Vous pouvez définir la scrollView taille dynamiquement par le biais d'
Vous pouvez utiliser la propriété suivante pour définir la dynamique de l'image pour chacune des pages
si vous utilisez pagingEnabled = OUI pour votre scrollview
Ci-dessous UIScrollViewDelegate délégué ajuster la page et le contenu
veuillez jeter un oeil à ce exemple d'application
oh.. mieux assurez-vous que la contentSize est toujours plus grand que le scrollView cadre. D'autre s'il vous plaît réinitialiser le scrollView Cadre (plus petit que contentSize) de nouveau avant d'aller à définir les contentSize . merci de le faire et que dire de la méthode scrollRectToVisible méthode ??
OriginalL'auteur Shamsudheen TK
Essayer ce.
OriginalL'auteur IOS Rocks