2010-12-02 3 views
5

Je construis une vue complexe basée sur des données dynamiques. En fonction du nombre d'éléments de données dans les collections, j'ajoute plus de vues. Chacune de ces sous-vues est complexe et se gonfle dans la boucle à travers la collecte de données. Ceci est bien sûr inefficace et je voudrais trouver un moyen de gonfler la sous-vue une seule fois et ensuite de les réutiliser à la place. Est-ce possible en quelque sorte? PS: Je ne veux pas construire les sous-vues en code (je sais que je pourrais) car cela rendrait les choses encore plus désordonnées en raison de la complexité et du nombre de sous-vues, mais si la performance augmentait considérablement, je pourrais prendre regarde ça.Réutilisation de vues gonflées

PPS: Il n'y a pas de problème de performance visible, mais TraceView que la plupart du temps est consacré à gonfler et si je peux le faire plus vite j'aimerais ;-)

+0

Avez-vous déjà trouvé cela? Je suis exactement au même problème et n'arrive pas à trouver une solution. – Tiago

+1

Non ... malheureusement pas. J'ai à peu près abandonné ça. Le meilleur que je suis venu avec une vue créée à partir du code et de la mise en cache que .. mais c'est moche d'écrire et de maintenir. –

+0

Je vois. Merci d'avoir répondu malgré Manfred! – Tiago

Répondre

2

vous pouvez consulter la session Google IO intitulé " Le monde de ListView '.

Il explique très bien comment éviter de gonfler la même vue encore et encore, et comment réutiliser une vue particulière si elle a déjà été gonflée plus tôt.

Voici le lien.

http://www.google.com/events/io/2010/sessions/world-of-listview-android.html

Vous pouvez télécharger le fichier .pdf ou voir la vidéo.

Espérons que ça aide.

Cordialement, Mahendra Liya.

+1

Merci pour le conseil, mais dans mon cas, je ne suis pas confronté à des listes. J'ai appliqué ce modèle correctement sur mes pages de liste, mais dans ce cas les "listes" sont créées en insérant dynamiquement des vues gonflées et il y en a trois différentes dans la page. Les listes ne fonctionnent pas bien si vous avez plusieurs sur la même page et ont également le mauvais comportement de défilement. J'ai besoin de faire défiler toute la page. Tout le travail de rendu et le comportement fonctionne bien. Il gonfle simplement chaque vue plusieurs fois. –