Lors de la gonflage des vues pour une liste de listeView, il est-il préférable d'avoir toutes les visites textuelles sans Android: texte dans le fichier .xml et combien cela affecte-t-il la vitesse? Qu'en est-il de ViewStubs, cela serait-il encore plus rapide? P>
Lorsque vous gonflez une linearlayout avec 8 TextViews sans Android: Texte et avec Android: Texte = "@ String / ABC", cela change-t-il quelque chose? Notez que je suis en train de réutiliser des points de vue, alors peut-être que 10 gonflés et ensuite réutilisés je ne sais pas. P>
Je me développe sur une lame ZTE, donc un processeur simple 600 MHz et non un noyau quad ... p>
3 Réponses :
Ceci est assez utile lorsque vous accélérez les vues de la liste, en particulier le bit de la vue: http://developer.android.com/training/improving-layouts/smooth-scrolling.html p>
J'ai aussi une lame ZTE, ils sont lents, mais des applications qui fonctionnent bien sur elle fonctionnent incroyables sur les téléphones «normaux» :) p>
oui j'utilise le titulaire de la vue, je me demandais si le gonflement avait une influence
Je ne pense pas que ce ne soit pas, mais si vos articles de rangée ont beaucoup de widgets, il va ralentir tout un peu. Essayez-vous d'améliorer la vitesse de défilement?
Même si j'utilise un adaptateur, mon application est suspendue pendant quelques secondes après Ajax Return et je remplis la liste avec 40 rangées et j'utilise un onglet Samsung Galaxy, ne peut pas comprendre comment optimiser plus
Je pense que vous accéderez à Internet dans le fil de l'interface utilisateur par le son de celui-ci. Voyez ici pour un exemple: lab.makemachine.net/2010/05/Android -Syncttask-Exemple
Non non, j'utilise asynccttask, juste que lorsque j'ajoute 40 heures à la fois, il est à la traîne, envisageait d'ajouter un à un avec un délai de retard dans Beetween, Dunno
Publiez votre code dans votre question, vous pouvez faire quelque chose de pas tout à fait juste qui le rend lent, les tâches asynchronisées sont difficiles à obtenir juste parfois: p
Ce sont des questions théoriques de la quantité qui a un effet sur la vitesse, je n'ai pas besoin de code pour utiliser une asynchrone
Je vois, si vous n'utilisez pas plusieurs threads, je le recommanderais certainement, bonne chance!
Vous pouvez essayer cela, pas sûr s'il va accélérer, mais lui donner un coup de feu.
Gonflez la mise en page dans un fil d'arrière-plan. p> dans le fil d'arrière-plan, p> puis invalider la vue
'v' code> li>
v code>. p>
Je ne peux pas le faire travailler, v.postinvalidate () ne fait rien
L'idée est bonne, mais je ne peux pas le faire fonctionner, avez-vous un exemple de code de travail simple quelque part?
Comment échangez-vous ConvertView avec V, il n'y a aucun moyen de le faire
L'idée est de gonfler une linearlayout, puis d'ajouter à tous les éléments que l'on veut, de cette façon ça marche
Pouvez-vous s'il vous plaît ajouter le code de travail final à votre message !! ... Est-ce qu'il accélère?
Il s'agit d'une sorte de vitesse très peu perceptible, je suppose que la seule façon d'avoir la vitesse est d'écouter Romainguy et de construire votre propre vue personnalisée comme ils l'ont fait avec une application Gmail
Cette méthode de chargement est significativement efficace si la disposition de l'élément est imbriquée. Votre cas, la mise en page est assez simple. Quoi qu'il en soit, ce post serait utile à quelqu'un d'autre ..
Une autre chose que vous puissiez faire est de créer toutes les vues de Java .. pas gonfler de XML ..
Si vous remplacez de toute façon le texte dans la TextViews, vous ne devriez pas la déranger de les peupler dans le XML. P>
Un véritable tueur pour la performance qui est tentant de faire dans la liste des vues imbriquées est imbriquée linéarlayouts. Avec un peu de travail, tout arbre linéarlayout pourrait être remplacé par une relativation. P>
Assurez-vous que vous n'utilisez pas FOTEVIEDBYID en dehors du fichier IF (convertieView == null) {Bloc.flant soit à l'aide du style de vue du titulaire de la vue, soit simplement dans la vue.Settag (r.id.reesid, Findviewide (r.id.reesid) ) p>
Vous avez mentionné dans des commentaires que vous rencontrez un retard lorsque vous retournez de votre asyncaptage. Assurez-vous que vous ne rechargez pas la table après chaque entrée. Faites une mise à jour en vrac de la source de données, puis rechargez le tableau. P>
Si vous faites une hauteur de votre rangée plus grande, Android doit dessiner moins de lignes et est plus rapide, vous pouvez également justifier en disant que les personnes avec de gros doigts peuvent sélectionner plus facilement les rangées :)