2009-12-06 7 views
0

J'ai une sous-vue dans un UIScrollView et il semble que la vue est déformée chaque fois que je fais un zoom arrière ou dans la vue de contenu. Comme décrit here par Brad Larson que je dois définir certaines valeurs de transformation et redessiner la vue de contenu. Maintenant, mon problème est comment puis-je redessiner ma vue de contenu. La vue de contenu de UIScrollView est un UIView avec sous-vues UIButtons. Dois-je supprimer ce UIView de mon UIScrollView puis rajouter?Comment redessiner la vue de contenu de UIScrollView

Merci.

Répondre

1

Je crois que ce que vous voulez est

[view setNeedsDisplay]; 

ou

[view setNeedsDisplayInRect:(CGRect)myRect]; 
+0

Merci beaucoup. Je vais essayer celui-ci et je vous saurai si cela corrige mon problème. Merci encore. =) – domlao

+2

En fait, cela n'aidera pas, car les UIButtons devront avoir leurs cadres ajustés pour refléter le facteur d'échelle modifié. Simplement les rafraîchir ne fera rien. –

2

Qu'est-ce que vous voulez faire est de redimensionner manuellement et Restructurer chacun de vos boutons pour tenir compte du nouveau facteur d'échelle que la UIScrollView vous a présenté dans la méthode -scrollViewDidEndZooming: withView: atScale: delegate. Cela peut être fait en bouclant vos UIButtons et en ajustant leurs cadres avec leurs nouvelles positions et tailles calculées. Les UIButtons vont se redessiner brusquement au nouveau facteur d'échelle.

+0

Je vois, donc je dois supprimer le UIView principal ou la vue de contenu avec UIButtons, puis allouer l'UIView à nouveau et ajouter chaque UIButton dans le UIView puis définir chaque UIButton son cadre en utilisant CGRectMake? – domlao

+1

Non, il n'est pas nécessaire de supprimer les vues. Réglez simplement les cadres des UIButtons sur leurs nouvelles tailles et positions, et réglez la taille de la vue globale pour correspondre. Tout sera redessiné au besoin. –

+0

Merci. Mais c'est bizarre toute la vue a disparu. J'ai fait exactement ce que vous avez suggéré dans vos réponses, mais toute la vue a disparu. – domlao

Questions connexes