Android xml vs java dispositions de la performance
Android SDK offre aux développeurs de concevoir des mises en page dans des fichiers xml ou directement dans le code java. J'ai lu à ce sujet et tout le monde dit que xml sont plus faciles à maintenir et simplyer à écrire, mais ils sont statiques. Autrement java mise en page est dynamique, mais pas l'un des commentaires les problèmes de performances. La seule chose que j'ai trouvé sur le rendement a été de nidification de mise en page ont de l'impact négatif de la performance. Au lieu d'écrire imbriquée mise en page, il est préférable de faire personnalisé. C'est très bien ;).
Ce sujet de conception de mise en page? xml ou code java? Comment sont des fichiers xml analysé mon android, au moment de l'exécution ou de la compilation? Même si elles sont analysées au moment de la compilation, ils doivent être utilisés dans l'exécution. Alors, qui sera plus rapide pour déclarer RelativeLayout en xml ou de les déclarer dans la méthode onCreate?
- Instancier point de Vue est un peu plus rapide que le gonflage de la Vue à partir du fichier XML. À moins que votre code Java est trop mauvais.
- Le meilleur avantage de l'utilisation de XML cours d'exécution création de mises en page ", VOUS POUVEZ VOIR L'APERÇU, sans avoir à courir à chaque fois" ., Et je crois que lui-même est une bonne raison.
Vous devez vous connecter pour publier un commentaire.
Une mise en page définit la structure visuelle pour une interface utilisateur, tels que l'INTERFACE utilisateur pour une activité ou d'une application widget. Vous pouvez déclarer une mise en page de deux façons:
Déclarer des éléments de l'INTERFACE en XML. Android fournit un simple XML
le vocabulaire qui correspond à l'Affichage de classes et sous-classes, par exemple
que ceux pour les widgets et les mises en page.
Instancier les éléments de mise en page lors de l'exécution. Votre application peut créer
Vue et ViewGroup objets (et de manipuler leurs propriétés)
par programmation.
Android cadre vous donne la flexibilité de l'utilisation ou l'autre de ces méthodes pour la déclaration et la gestion de votre application l'INTERFACE utilisateur. Par exemple, vous pourriez déclarer votre par défaut de l'application des schémas XML, y compris les éléments de l'écran qui apparaîtra en eux et de leurs propriétés. Vous pouvez ensuite ajouter du code dans votre application qui permettrait de modifier l'état des objets à l'écran, y compris celles mentionnées dans le XML, au moment de l'exécution.
Le Plugin ADT pour Eclipse offre un aperçu de la mise de votre XML le fichier XML ouvert, sélectionnez l'onglet Mise en page.
Vous devriez aussi essayer la Hiérarchie de l'outil Observateur, pour le débogage des maquettes, il révèle la mise en page des valeurs de propriété, dessine des maquettes avec un rembourrage/indicateurs de marge, et plein rendus vues pendant le débogage sur l'émulateur ou le périphérique.
La layoutopt outil vous permet d'analyser rapidement vos mises en page et les hiérarchies de l'inefficacité ou d'autres problèmes.
Lorsque vous compilez votre application, chaque XML fichier de mise en page est compilé dans une ressource de Vue. Vous devez charger la mise en page de ressources à partir de votre code d'application, dans votre
Activity.onCreate()
de rappel de mise en œuvre. Le faire en appelantsetContentView()
, en lui passant la référence à votre disposition des ressources sous la forme de:Je pense que c'est trop bien il suffit de visiter ce lien http://developer.android.com/guide/topics/ui/declaring-layout.html et obtenir plus d'informations..
rl = new RelativeLayout()
dans votre code, il également de compiler et d'exécuter. Mais vous avez écrit en java au format. de la même façon quand vous écrivez<RelativeLayout .. />
en XML, il compile aussi que la classe java code et de l'exécuter. Et dans le fichier XML que vous avez quelque représentant de format..Un facteur principal de décider où déclarer un composant de l'INTERFACE utilisateur est-il du comportement au cours de l'application du cycle de vie. Si c'est statique, je voudrais déclarer tous les attributs nécessaires en XML, si elle varie en fonction de l'interaction de l'utilisateur, je serais obligé de la mettre en œuvre dans l'activité.
Je voudrais aller XML comme beaucoup que possible pour les prestations des mentions ci-dessus comme la cohérence, une meilleure gestion pour les différentes tailles d'écran, de localisation, de gestion des ressources, etc.,
Il n'est pas beaucoup de différence de performance sage, car les ressources de votre fichier xml sera également précompilé à l'aide de aapt outils.Donc, la conversion de format XML qui va arriver à la source des fichiers de ressources et alongwith les fichiers source java ils seront compilés pour les fichiers de classe Java . Il est également logique que les performances devraient être autour de la même uniquement parce que finalement, les deux seront compilées et de la mémoire pour les deux seront attribués au moment de l'exécution. Aussi je l'ai vérifié avec mon exemple d'application de prise de vues similaires via XML et via Java et tout profilage j'ai trouvé que le rendu de la Vue prend environ le même temps. 🙂