88 votes

Ordre des attributs XML dans Android Studio

Je suis confronté à un problème de maintien de l'ordre des attributs XML dans Android Studio. Comme vous pouvez le voir ci-dessous, l'attribut style se situe entre layout_* mais je veux qu'ils soient classés par nom (comme dans Eclipse). J'utilise le formateur de code standard d'Intellij et Android Studio offre aux utilisateurs la possibilité de définir leurs propres règles concernant l'ordre XML. Les paramètres sont situés dans Code Style -> XML -> Arrangement mais il semble que cela ne fonctionne pas ou que je l'utilise mal. Avez-vous une idée de la façon d'ordonner les attributs XML par nom en utilisant le formateur de code par défaut ?

<TestView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    style="@style/BackgroundLight"
    android:layout_height="wrap_content">

</TestView>

196voto

tomrozb Points 2238

Je l'ai enfin.

  1. Choisissez File > Settings > Code Style > XML > Set from > Predefined Style > Android
  2. Définir File > Settings > Editor > Formatting > Show "Reformat Code" dialog
  3. Exécuter le formatage sur un fichier XML ( CTRL+ALT+L par défaut)
  4. Vous verrez apparaître une fenêtre popup, définissez le paramètre Rearrange entries drapeau
  5. Désactiver Reformat Code dans les paramètres

De cette façon, chaque formatage de fichier XML placera les attributs dans un ordre correct.

Edit : A partir de la version 0.2.6 d'Android Studio, la mise en forme du style XML Android est définie par défaut, mais vous devez toujours définir les paramètres suivants Rearrange Entries manuellement.

http://tools.Android.com/recent/androidstudio026released

Appliquer automatiquement le style de code Android XML si un style de code n'a pas été déjà été personnalisé. Cela permettra d'ordonner automatiquement automatiquement les attributs XML (cochez la case "Réorganiser les entrées" dans la boîte de dialogue "Code > Reformatage du code"). "Code > Reformat Code...").

28voto

oxied Points 121

MISE À JOUR : la méthode que je décris ci-dessous est un moyen officiel de résoudre ce problème connu, voir : https://developer.Android.com/studio/releases

Après la mise à jour de la dernière version Android Studio v3.4.2 J'ai découvert qu'il ne formatait plus correctement le code XML. Par exemple, attributes ordering didn't work in layouts . Il ne faisait que l'indentation et l'ordre des espaces de noms.

Je ne connais pas la raison pour laquelle il était cassé après une mise à jour mais j'ai eu la chance de pouvoir le réparer :

  1. Ir a Settings ( CMD + , ) sur Mac.
  2. Type format dans la boîte de recherche et cliquez sur Editor -> XML réglage.
  3. Cliquez sur le Android et faites les mêmes réglages ici que sur une photo :

Android tab in XML formatting Setting Les paramètres de l'image sont tout à fait normaux, mais vous pouvez bien sûr adapter cet onglet à vos besoins.

  1. Allez à la Arrangement et vous verrez quelque chose comme ceci :

Arrangement tab in XML formattings Setting La raison pour laquelle les attributs ne sont pas triés est que les règles de tri sont vides.

  1. Pour réparer cela :

    1. Choisissez Scheme et jouer avec Default IDE y Project options. Passer de l'une à l'autre peut aider.
    2. Ou choisissez Scheme qui répond à vos besoins, puis cliquez sur Set from... texte bleu dans le coin supérieur droit -> Predefined Style -> Android . Vous verrez les règles restaurées dans la fenêtre :

Finally you will see restored rules here J'ai également choisi Force rearrange - Always

Pour sauvegarder le résultat - cliquez sur Apply .

Vous pouvez également cliquer sur l'icône d'engrenage près de Scheme et de copier les paramètres ou même de restaurer les valeurs par défaut.

P.S. Pour moi, les règles standard sont confortables, mais elles peuvent être personnalisées davantage. Voici un article qui peut vous aider à le faire : https://medium.com/@VeraKern/formatage-xml-layout-files-pour-Android-47aec62722fc

9voto

Infomaster Points 321

Allez dans votre mise en page XML
Essayez Ctrl + alt + shift + L alors l'étiquette de la case à cocher est Réorganiser le code et vérifié son.

5voto

Pablo Espantoso Points 144

Pour supprimer les lignes vides entre eux :

Préférences > Style de code > XML > Autre > Conserver les lignes vides : 0

Et ensuite, reformatez simplement vos fichiers XML.

0voto

Karl Points 676

Il existe un plugin pour IntelliJ qui pourrait faire ce que vous recherchez...

http://plugins.jetbrains.com/plugin/?idea&pluginId=6546

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X