UIScrollView pas de défilement indépendamment de grande contentSize
J'ai créé un UIScrollView et ajouté des sous-vues dans Interface Builder, mais je ne suis pas capable de le faire pour les faire défiler. J'ai regardé d'autres questions similaires, mais j'ai réglé mon contentSize de façon appropriée. En fait, j'ai même essayé de réglage incroyablement grand contentSize et il ne parvient pas à faire la différence. Ce qui me manque? Notez que le UIScrollView est un IBOutlet:
@property (strong, nonatomic) IBOutlet UIScrollView *scroll;
C'est dans ma viewDidLoad:
self.scroll.scrollEnabled = YES;
[self.scroll setContentSize: CGSizeMake(2400,8000)];
Voici des captures d'écran de l'Interface Builder:
Ici est le point de vue lors de l'exécution, mais toute tentative de défilement horizontal ou vertical, à tout point ne fonctionne pas.
Avez-vous lié
Je crois que oui. J'ai ajouté une capture d'écran de référencement de sortie. J'ai aussi essayé de
pourriez-vous nous définir image avant de setContentSize? juste pour un essai.
Que dois-je mettre l'image?
rien de moins que votre ContentSize.
IBOutlet
à la table de montage?Je crois que oui. J'ai ajouté une capture d'écran de référencement de sortie. J'ai aussi essayé de
self.scroll.backgroundColor = [UIColor redColor];
et il fonctionne très bien, alors je crois que tout est relié correctement.pourriez-vous nous définir image avant de setContentSize? juste pour un essai.
Que dois-je mettre l'image?
rien de moins que votre ContentSize.
OriginalL'auteur golddove | 2014-01-22
Vous devez vous connecter pour publier un commentaire.
Tournant Automatique de Mise hors d'œuvres, mais ce n'est pas la solution. Si vous avez vraiment besoin de Mise en page Automatique, puis l'utiliser, si vous n'en avez pas besoin, éteignez-le. Mais ce n'est pas le bon correctif pour cette solution.
UIScrollView
fonctionne différemment avec d'autres points de vue dans la Mise en page Automatique. Voici Apple note de version sur la Mise en page Automatique, j'ai copié le morceau intéressant (l'emphase est mienne, au troisième point):Apple va ensuite à montrer un exemple de comment utiliser correctement
UIScrollView
avec Mise en page Automatique.En règle générale, un seul de la plus simple solution est de créer une contrainte entre l'élément vers le bas de la UIScrollView. Ainsi, dans l'élément que vous voulez être dans le bas de la UIScrollView, créer ce fond de l'espace de contrainte:
Encore une fois, si vous ne souhaitez pas utiliser la Mise en page Automatique, puis l'éteindre. Vous pouvez ensuite définir la
contentSize
la manière habituelle. Mais ce que vous devez comprendre, c'est que c'est un comportement de Mise en page Automatique.Ma conjecture est que, auparavant, il n'y a pas de contraintes à-dire "le contenu doit être au moins autant!", et le compilateur ignore votre
setContentSize:
appeler parce qu'il est simplement en regardant vos contraintes afin de voir comment beaucoup de contenu, il est dans le défilement de la vue.J'ai eu un problème similaire. J'ai essayé de créer un défilement de l'affichage des champs de texte permettant de développer et de faire défiler sur l'écran. Réglage bas contrainte résolu mon problème!
OriginalL'auteur Enrico Susatyo
Essayez de désactiver autolayot par
Sélectionnez
ViewController
puisfile inspecto
r et dansinterface builder document
section, vous pouvez voirUse Autolayout
cochée ou pas. Si son cochée, alorsuncheck
.Cette info UIScrollView Et De Mise En Page Automatique peut donner les détails.
OriginalL'auteur Akhilrajtr
Essayer ce code à l'auto set de la taille du contenu
de la première copie et coller votre point de vue contrôleur dans la Méthode viewDidLoad
puis copiez et collez ci-dessous la Méthode viewDidLoad
connecter YOUR_SCROLLVIEW délégué aussi et TextFeild Délégué a également
Amusez-Vous Bien!!!
OriginalL'auteur kagmanoj
Si vous utilisez l'auto-mise en page que de tout Mettre dans la UIScrollView dans un autre UIView, et mettre une UIView comme le seul enfant de la UIScrollView. Ensuite, vous pouvez utiliser la mise en page automatique.
Si les choses près de la fin est foiré (la fin de quelle que soit la direction de votre UIScrollView manuscrits), changement de la contrainte à la fin pour avoir la plus faible priorité.
OriginalL'auteur Rahul Patoliya