web-dev-qa-db-fra.com

Ordre des attributs XML dans Android Studio

Je rencontre un problème avec le maintien du bon ordre des attributs XML dans Android Studio. Comme vous pouvez le voir ci-dessous, l'attribut style se situe entre layout_* attributs, mais je veux qu'il soit ordonné par nom (comme dans Eclipse). J'utilise le formateur de code Intellij standard et le Android Studio donne aux utilisateurs la possibilité de définir vos propres règles concernant l'ordre XML. Les paramètres sont situés dans Code Style -> XML -> Arrangement, mais cela ne semble pas fonctionner ou je l'utilise mal. Des idées sur la façon de classer les attributs XML par nom à l'aide du 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>
71
tomrozb

Je l'ai finalement eu.

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

De cette façon, chaque formatage de fichier XML définira les attributs dans un ordre approprié.

Modifier: à partir de Android Studio 0.2.6, libérez le XML Android est définie par défaut, mais vous devez toujours définir le Rearrange Entries marquer manuellement.

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

Appliquer automatiquement le style de code XML Android Android si un style de code n'a pas encore été personnalisé. Cela permettra de commander automatiquement les attributs XML (cochez la case "Réorganiser les entrées" dans le "Code> Boîte de dialogue Reformater le code ... ".)

167
tomrozb

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

Je ne connais pas la raison pour laquelle il a été cassé après une mise à jour, mais j'ai eu la chance de résoudre ce problème:

  1. Accédez à Settings (CMD+,) sur Mac.
  2. Tapez format dans la zone de recherche et cliquez sur Editor -> XML réglage.
  3. Cliquez sur l'onglet Android et effectuez les mêmes réglages ici que sur une image:

Android tab in XML formatting Setting Paramètres sur une image tout à fait normal, mais bien sûr, vous pouvez régler cet onglet en fonction de vous.

  1. Allez dans l'onglet 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 - les règles de tri sont vides.

  1. Pour résoudre ce problème:

    1. Choisissez Scheme et jouez avec Default IDE et Project options. Passer de l'un à l'autre peut aider.
    2. Ou choisissez Scheme qui correspond à 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 aussi choisi Force rearrange - Always

Pour enregistrer le résultat - cliquez sur Apply.

Vous pouvez également cliquer sur une icône d'engrenage près de Scheme et copier les paramètres ou même restaurer les paramètres 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/formatting-xml-layout-files-for-Android-47aec62722fc

6
oxied

Pour supprimer des lignes vides entre elles:

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

Et puis reformatez simplement vos fichiers XML.

5
Pablo Espantoso

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

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

0
Karl

Fichier> Paramètres> Éditeur> XML> Arrangement Select Scheme et choisissez Default

0
cthoughtz