49 votes

Comment passer du ConstraintLayout par défaut au RelativeLayout dans Android Studio ?

J'ai la dernière version d'Android Studio (2.3 beta 3) et il semble que le ConstraintLayout soit la valeur par défaut lors de la création d'un projet. Comment puis-je faire en sorte qu'Android Studio utilise le RelativeLayout comme élément de mise en page par défaut pour les nouveaux projets ?

enter image description here

46voto

J'ai vu la réponse ci-dessus et ça a marché pour moi aussi. Mais, j'ai essayé, et j'ai réussi à convertir mon projet actuel en disposition relative. Faites comme suit :

Dans l'onglet activity_main.xml, changez-le en texte. En haut de celui-ci, vous trouverez ce qui suit :

<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"

Changez simplement tous les xmlns précédents en RelativeLayout. Ce faisant, vous modifierez également la toute dernière ligne où vous trouverez :

</android.support.constraint.ConstraintLayout>

à

</RelativeLayout>

Problème résolu ! Soyez heureux :P

7 votes

Cette réponse ne répond pas à la question, qui demande comment changer la disposition par défaut lors de la création d'un projet.

4 votes

Cette réponse modifie la mise en page pour le projet "actuel". La question porte sur la modification de la mise en page par défaut, si vous utilisez rarement une mise en page de contrainte, c'est une perte de temps de modifier la mise en page sur chaque projet que vous créez et donc vous devriez modifier le modèle de fichier par défaut pour le code que vous aimez pour commencer.

0 votes

Quel est le rapport entre cette réponse et cette question ?

15voto

Hargun Singh Points 201

Je réponds à cette question pour Android studio 2.3.1. L'une des façons les plus simples de définir RelativeLayout comme disposition par défaut est d'aller en mode texte et de modifier le fichier XML comme suit :

Changez cette ligne :

<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"

A

<android.widget.RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

Et vérifiez que votre étiquette de fin change en fonction de cela :

</android.widget.RelativeLayout>

Vous pouvez également (facultativement) supprimer cette ligne si elle est affichée en gris :

xmlns:app="http://schemas.android.com/apk/res-auto"

Editar:

Il s'agit d'un changement facultatif à faire dans le projet, je suis tombé sur cette astuce en parcourant le cours Android Developer d'Udacity.

Si la disposition des contraintes n'est pas nécessaire dans le projet, supprimez la dépendance suivante du fichier build.gradle en supprimant cette ligne, puis en effectuant une synchronisation gradle :

    compile 'com.android.support.constraint:constraint-layout:1.0.0-beta4'

14voto

nexus5geozhi q Points 119

Android studio 3.0

étape0 :

Fermer Android studio

étape1 :

Goto C:\Program Fichiers \Android\Android Studio \plugins\android\lib\templates\activities\common\root\res\layout\

étape2 :

Sauvegarde simple.xml.ftl

étape3 :

Changez simple.xml.ftl en code ci-dessous et enregistrez :

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="${packageName}.${activityClass}">

<TextView
    android:id="@+id/textView2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentStart="true"
    android:layout_alignParentTop="true"
    android:layout_marginStart="12dp"
    android:layout_marginTop="21dp"
    android:text="don't forget to click useful if this helps. this is my first post at stackoverflow!"
    android:textSize="20sp"
    />

</RelativeLayout>

0 votes

Cela a fonctionné pour moi. C'est la seule réponse qui change réellement la valeur par défaut ; toutes les autres réponses ne la changent que pour le projet en cours et elle revient à constraintLayout la prochaine fois que je lance un nouveau projet Android Studio.

0 votes

Utilisateurs de Mac : Voir stackoverflow.com/questions/23537065/ pour l'emplacement du dossier du plugin sur le mac.

1 votes

Devrait être marqué comme une vraie réponse. Bien que ce soit un hack, c'est peut-être la seule chose qui fonctionne de manière cohérente. Il est vraiment dommage que le nouveau "défaut" ne fasse même pas partie du kit AndroidSDK normal.

10voto

Amir Poursadegh Points 91

pour Android studio 3.1

Si vous voulez changer votre studio Android par défaut, suivez les étapes ci-dessous :

primero

aller à C:\Program Fichiers \Android\Android Studio \plugins\android\lib\templates\activities\common\root\res\layout

c'est-à-dire le répertoire de fichiers où vous avez installé Android studio.

entonces

copier simple.xml d'un autre endroit juste pour la sauvegarde

après cela

ouvrez le fichier simple.xml et remplacez le code comme suit

<?xml version="1.0" encoding="utf-8"
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="${packageName}.${activityClass}">

</RelativeLayout>

mais si vous voulez juste changer la mise en page du projet, il suffit d'aller dans activity_main.xml et ensuite dans text et de poster le code supérieur à cet endroit.

3 votes

C'est la seule réponse qui indique comment passer de l'option par défaut disposition.

5voto

Suhaib Points 1181

solution inefficace :

Créer une nouvelle mise en page

  1. Aller dans le dossier /res/layout dans Android Studio
  2. Clic droit -> Nouveau -> Fichiers de ressources de mise en page
  3. Donnez-lui un nom et ajoutez .xml à la fin.
  4. Effacez le champ Root Element et tapez 'RelativeLayout'.

enter image description here

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