En zoomant correctement un UIScrollView qui contient le nombre de sous-vues
J'ai créé un zoomable UIScrollView et a ajouté 100 des sous-vues à elle (carrelage). La vue défile parfaitement à gauche et à droite. Cependant, je tiens à permettre le zoom.
Pour ce faire, j'ai lu que mon délégué doit mettre en œuvre:
- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView {
return ???;
}
J'ai vu des exemples qui n'ont qu'une sous-vue à zoom, de sorte qu'ils de retour qui sous-vue dans la méthode. Dans mon cas, cependant, j'ai beaucoup plus. Quelle est la bonne façon de faire le zoom?
J'ai essayé de créer un autre UIView et en ajoutant les 100 sous-vues de celui-là. Et puis de retour que d'un point de vue sur la méthode ci-dessus, mais je ne fonctionne pas (zoom avant, mais une fois qu'il s'arrête, il n'est pas interactif plus).
- Avez-vous essayé de retourner les UIScrollView lui-même?
- Oui, c'était la première chose que j'ai essayé. Il a sali les choses ainsi...
Vous devez vous connecter pour publier un commentaire.
Exactement,
C'est ce que Apple est également de mentionner dans le Faites Défiler La Vue Guide De Programmation:
Il suffit de créer une vue, ajouter tous les sous-vues de ce point de vue et ajouter l'affichage nouvellement créé comme un seul sous-vue de la scrollview...
Puis dans le viewForZoomingInScrollView délégué de la méthode de retour de l'objet à l'Index 0:
J'ai créé le point de vue où j'ai ajouté tout en utilisant:
sans définir son cadre.
Le problème a été résolu lorsque, après l'ajout de tous les sous-vues à elle, j'ai mis son image de quelque chose d'assez grand pour accueillir tout le carrelage sous-vues.
Vous devez retourner ce que vous allez à ajouter des points de vue pour faire défiler la vue comme un sous-vues.
Ex: Si vous ajoutez d'affichage de l'image pour faire défiler la vue puis écrire