Partage
  • Partager sur Facebook
  • Partager sur Twitter

R.custom_resource Comment faire ?

Sujet résolu
    9 août 2019 à 12:39:48

    Bonjour à tous;

    Je me remets au développement Android et je suis le tuto online.

    Dans la partie Constituion des interfaces , on parle de la classe R.

    J'ai tenté de faire quelque chose du genre : 

    android:id="@+home_activity/createAccountEditText"   

    sauf que mon éditeur de texte me dit grosso modo que je dois tout faire dans :

    android:id="@+id/createAccountEditText"

    Je pensais que le @+ permettait justement de créer sa propre custom ressources. Aurais-je oublé une étape ?

    Merci pour votre aide.

    • Partager sur Facebook
    • Partager sur Twitter
    Celui qui pose une question risque cinq minutes d'avoir l'air bête, celui qui ne pose pas de question restera bête toute sa vie.
      12 août 2019 à 12:05:20

      Salut,

      Le @+id indique la création d'un identifiant. Dans l'attribut id tu dois obligatoirement mettre un id.

      • Partager sur Facebook
      • Partager sur Twitter
        15 août 2019 à 6:08:40

        Bonjour et merci pour ta reponse!

        Si je dois forcement mettre un id comment expliques-tu que lors d'un projet precedent, j'avais reussi a faire quelque chose du genre :

        <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
            xmlns:tools="http://schemas.android.com/tools"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="#CCCCCC"
            tools:context=".HomeActivity" >
        
            <TextView
                android:gravity="center"
                android:id="@+home_activity/titleText"
                android:layout_width="fill_parent"
                android:layout_height="70dp"
                android:layout_centerHorizontal="true"
                android:layout_marginBottom="29dp"
                android:text="@string/TitleText"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:background="@drawable/banner"
                style="@style/Title" />
            
            <LinearLayout
                android:id="@+home_activity/namelayout"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_below="@+home_activity/titleText"
                android:layout_marginBottom="29dp"
                android:orientation="vertical" >
                
        	    <LinearLayout
        	        android:id="@+home_activity/namelayout"
        	        android:layout_width="match_parent"
        	        android:layout_height="wrap_content"
        	        android:layout_marginBottom="29dp"
        	        android:orientation="horizontal" >
        	
        	        <TextView
        	            android:id="@+home_activity/nameLabel"
        	            android:layout_width="0dip"
        	            android:layout_height="wrap_content"
        	            android:layout_weight="0.37"
        	            android:text="@string/NameText"
        	        	style="@style/Label" />
        	
        	        <TextView
        	            android:id="@+home_activity/nameText"
        	            android:layout_width="0dip"
        	            android:layout_height="wrap_content"
        	            android:layout_weight="0.37"
        	            android:textIsSelectable="true"
        	            style="@style/Field" />
        	    </LinearLayout>
        	
        	    <LinearLayout
        	        android:id="@+home_activity/accountlayout"
        	        android:layout_width="match_parent"
        	        android:layout_height="wrap_content"
        	        android:layout_marginBottom="29dp"
        	        android:orientation="horizontal" >
        	
        	        <TextView
        	            android:id="@+home_activity/accountLabel"
        	            android:layout_width="0dip"
        	            android:layout_height="wrap_content"
        	            android:layout_weight="0.37"
        	            android:text="@string/AccountText"
        	        	style="@style/Label" />
        	
        	        <TextView
        	            android:id="@+home_activity/accountText"
        	            android:layout_width="0dip"
        	            android:layout_height="wrap_content"
        	            android:layout_weight="0.37"
        	            android:textIsSelectable="true"
        	            style="@style/Field" />
        	    </LinearLayout>
        	    
        	    <LinearLayout
        	        android:id="@+home_activity/storagelayout"
        	        android:layout_width="match_parent"
        	        android:layout_height="wrap_content"
        	        android:layout_marginBottom="34dp"
        	        android:orientation="horizontal" >
        	
        	        <TextView
        	            android:id="@+home_activity/storageLabel"
        	            android:layout_width="0dip"
        	            android:layout_height="wrap_content"
        	            android:layout_weight="0.37"
        	            android:text="@string/StorageText"
        	        	style="@style/Label" />
        	
        	        <TextView
        	            android:id="@+home_activity/storageText"
        	            android:layout_width="0dip"
        	            android:layout_height="wrap_content"
        	            android:layout_weight="0.37"
        	            android:textIsSelectable="true"
        	            style="@style/Field" />
        	    </LinearLayout>
        	    
        	   <LinearLayout
        	        android:id="@+home_activity/endDatelayout"
        	        android:layout_width="match_parent"
        	        android:layout_height="wrap_content"
        	        android:layout_marginBottom="16dp"
        	        android:orientation="horizontal" >
        	
        	        <TextView
        	            android:id="@+home_activity/endDateLabel"
        	            android:layout_width="0dip"
        	            android:layout_height="wrap_content"
        	            android:layout_weight="0.37"
        	            android:text="@string/EndDateText"
        	        	style="@style/Label" />
        	
        	        <TextView
        	            android:id="@+home_activity/endDateText"
        	            android:layout_width="0dip"
        	            android:layout_height="wrap_content"
        	            android:layout_weight="0.37"
        	            android:textIsSelectable="true"
        	            style="@style/Field" />
        	    </LinearLayout>
        	    
        	   <LinearLayout
        	        android:id="@+home_activity/buttonLayout"
        	        android:layout_width="match_parent"
        	        android:layout_height="wrap_content"
        	        android:orientation="horizontal" >
        	        
        		    <Button
        		        android:id="@+home_activity/ownFolderButton"
        		        android:layout_width="wrap_content"
        		        android:layout_height="wrap_content"
        	            android:layout_weight="0.37"
        		        android:text="@string/ownFolderButton" />
        		    
        		    <Button
        		        android:id="@+home_activity/otherFilesButton"
        		        android:layout_width="wrap_content"
        		        android:layout_height="wrap_content"
        	            android:layout_weight="0.37"
        		        android:text="@string/otherFilesButton" />
        		</LinearLayout>
        	</LinearLayout>
        </RelativeLayout>

        C'est un projet qui remonte a il y a quelques annees mais je pouvais tres bien faire :

        <Button
        		        
          android:id="@+home_activity/otherFilesButton"

        Et si je regarde dans mon fichier R auto genere, je retrouve bien mes ressources.

        public final class R {
            public static final class home_activity {
                public static final int accountLabel=0x7f0c0005;
                public static final int accountText=0x7f0c0006;
                public static final int accountlayout=0x7f0c0004;
                public static final int buttonLayout=0x7f0c000d;
                public static final int endDateLabel=0x7f0c000b;
                public static final int endDateText=0x7f0c000c;
                public static final int endDatelayout=0x7f0c000a;
                public static final int nameLabel=0x7f0c0002;
                public static final int nameText=0x7f0c0003;
                public static final int namelayout=0x7f0c0001;
                public static final int otherFilesButton=0x7f0c000f;
                public static final int ownFolderButton=0x7f0c000e;
                public static final int storageLabel=0x7f0c0008;
                public static final int storageText=0x7f0c0009;
                public static final int storagelayout=0x7f0c0007;
                public static final int titleText=0x7f0c0000;
            }
        }

        Je ne me souviens plus comment j'avais fait ca. C'est pour moi un moyen de m'organiser. Je ne retrouve toujours pas comment j'avais fait :/

        Si tu as la solution je suis preneur !

        Thanks a lot

        • Partager sur Facebook
        • Partager sur Twitter
        Celui qui pose une question risque cinq minutes d'avoir l'air bête, celui qui ne pose pas de question restera bête toute sa vie.
          15 août 2019 à 16:58:33

          Je n'ai aucune idée de comment tu as fait ça. Je ne suis pas sûr que ça soit une bonne pratique puisqu'en plus de 6 ans de développement Android je n'avais jamais vu ça.
          • Partager sur Facebook
          • Partager sur Twitter
            16 août 2019 à 6:10:24

            Salut et merci pour ta repnse,

            Bon je pense que je vais tout simplement organiser mes id en ajoutant un prefixe devant.

            @+id/home_activity_mon_id

            Thanks anyway :)

            Best regards,



            • Partager sur Facebook
            • Partager sur Twitter
            Celui qui pose une question risque cinq minutes d'avoir l'air bête, celui qui ne pose pas de question restera bête toute sa vie.

            R.custom_resource Comment faire ?

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown