2010-08-16 10 views
1

Je travaille sur un UIScrollView spécial pour montrer une chronologie des événements, (comme un diagramme de Gantt si vous êtes familier avec de telles choses) et il pourrait y avoir des douzaines de ces événements, certains visibles et d'autres non . Ce que je me demande est ceci: dois-je faire une implémentation semblable à UITableView pour enlever les articles qui ont défilé hors de vue, et réutiliser les vues pour d'autres articles comme ils viennent dans l'écran?Ai-je besoin de supprimer les sous-vues qui ne sont pas visibles dans UIScrollView pour que tout fonctionne correctement?

Il semble que cela pourrait prendre un peu de temps, et je ne veux pas perdre de temps si ce n'est pas quelque chose qui affectera les performances à petite échelle.

Je reçois l'idée de la référence de classe UIScrollView:

« L'objet qui gère le dessin du contenu affiché dans une vue de défilement devrait tuiles de subviews du contenu afin que pas de vue dépasse la taille de l'écran. Au fur et à mesure que les utilisateurs défilent dans la vue déroulante, cet objet doit ajouter et supprimer des sous-vues si nécessaire. "

Merci pour toute aide.

Répondre

1

Cela dépend de la quantité de mémoire requise pour chaque élément de la vue défilante. Vous ne pouvez pas vraiment dire à moins que vous ne le construisiez ou que vous ne fournissiez plus d'informations sur les quantités exactes et ce que contient chaque élément dans UIScrollview. Supprimer des éléments qui ne sont pas visibles n'est pas un gros travail, mais cela peut poser des problèmes. Je voudrais d'abord l'essayer sans les supprimer et optimiser les éléments que vous ajoutez à la scrollview afin qu'ils utilisent le moins de mémoire possible et ensuite utiliser des instruments pour vérifier votre utilisation mem. Ensuite, allez à partir de là. J'espère que cela pourra aider.

+0

À ce stade, ils seront sous-classés UIButtons sans images, et UIViews simples avec des arrière-plans noirs. En ce qui concerne les montants, c'est finalement à l'utilisateur, je ne m'attendrais pas à plus de 40 dans les cas extrêmes. –

+0

Je ne pense pas que vous aurez un problème particulier dessinant ceux sur l'écran tant que l'autre membre de votre application est bonne. Si vous avez envie d'essayer le système de déquescement, c'est quelque chose de génial à apprendre et une fois que vous le savez, vous pouvez l'appliquer à de nombreux problèmes. –

+0

Salut Alex, vous devriez marquer cette question comme la réponse, sauf si vous souhaitez ajouter plus de contenu et redéfinir votre question. Si vous avez besoin de plus de détails pour que votre question soit complète, alors n'hésitez pas à demander, à moi-même ou à la communauté. –