samedi 28 janvier 2012

Vues Scroll

J'ai été la réalisation au cours des deux derniers jours que nous avons manqué quelque chose couvrant dans le livre que nous devrions avoir: UIScrollView. Maintenant que j'ai passé quelques jours les combats, je dois admettre que je suis content je l'ai raté. Ces choses sont complexes et pas aussi bien documentés comme il se doit. J'ai mon application travaille avec un test de recherche à l'intérieur d'une vue de défilement, et sans effets d'escalier, mais ma performance n'est pas bonne. Voici la chose:

UIScrollView commence toujours à un zoom de 1,0. Vous ne pouvez pas changer cela. Si vous le faites, ce sera juste l'amener à agir drôle la première fois que l'utilisateur touche l'écran (s'il vous plaît, si je me trompe sur ce point, me corriger). Mais, si vous zoomer sur un point de vue, on obtient tout pixelisé et blocailleux sauf si vous changez la couche de votre point de vue contenu de la sauvegarde (et / ou sous-vue) à un CATiledLayer. Faire qui tue la performance sur mon iPhone première génération. Je n'ai pas encore testé sur mon tactile seconde génération d'iPod, mais je soupçonne qu'il ne sera un peu mieux.

Mais, voici la chose. Si je change la taille de sorte que je commence un zoom avant, .. de telle sorte que l'affichage du contenu est la taille de la vue zoomée et ne pas utiliser CATiledLayer, il fonctionne à merveille, défile vite, ne saute pas, etc Mais, je ne veux pas l'utilisateur d'avoir à commencer manière un zoom avant, le programme ne sera pas intuitives si je fais ça.

Un problème connexe est que je n'arrive pas à agrandir la double tap-dézoomer et de travail. Dans une vieille édition du guide de programmation pour iPhone, il y avait des exemples de code qui est censé montré comment faire, mais je l'ai essayé, et beaucoup, beaucoup de variantes, et ne jamais avoir obtenu qu'elle fonctionne bien. Il pourrait y avoir une raison pour que l'échantillon de code n'est plus dans le guide de programmation.

Anybody Out There obtenu ce travail?

Aucun commentaire: