IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

Ligne de séparation horizontale après LinearLayout


Sujet :

Android

  1. #1
    Membre extrêmement actif Avatar de Mister Nono
    Homme Profil pro
    Ingénieur Mathématiques et Informatique
    Inscrit en
    Septembre 2002
    Messages
    2 242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur Mathématiques et Informatique
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 242
    Par défaut Ligne de séparation horizontale après LinearLayout
    Bonjour,

    Je cherche à ajouter une ligne de division (ou une ligne de séparation) après un LinearLayout comme par exemple la ligne de séparation utilisée par défaut par une ListView.

    Comment faire cela ?

    Merci.

    A+;

  2. #2
    Membre Expert
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Par défaut
    Essayes d'analyser comment sont fait les layouts natifs de Android, comme simple_list_item_1.xml par exemple :
    http://www.netmite.com/android/mydro...es/res/layout/
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

  3. #3
    Membre extrêmement actif Avatar de Mister Nono
    Homme Profil pro
    Ingénieur Mathématiques et Informatique
    Inscrit en
    Septembre 2002
    Messages
    2 242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur Mathématiques et Informatique
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 242
    Par défaut
    Citation Envoyé par Hephaistos007 Voir le message
    Essayes d'analyser comment sont fait les layouts natifs de Android, comme simple_list_item_1.xml par exemple :
    http://www.netmite.com/android/mydro...es/res/layout/
    Bonjour,

    J'ai bien regardé les fichiers xml mais cela ne m'a pas aiguillé pour trouver la solution au problème.

    Peux-tu me donner plus de précisions ?

    Merci.

    A+

  4. #4
    Expert confirmé

    Avatar de Feanorin
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    4 589
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 4 589
    Par défaut
    Bonjour

    Je cherche à ajouter une ligne de division (ou une ligne de séparation) après un LinearLayout comme par exemple la ligne de séparation utilisée par défaut par une ListView.
    Ce n'est pas défini de base dans les View, tu peux te créer ton composant personnalisé avec un nouveau paramètres depuis le xml .

    Sinon la méthode classique, tu rajoutes un view dans ton xml juste en dessous de la view ou tu veux rajouter ta ligne de séparation.

    En fait pour faire simple ta View ajouter sera ta ligne de séparation exemple,
    Une ligne horizontale :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     <View
    	android:layout_width="fill_parent"
            android:layout_height="1px"
            android:background="#FF909090" />

  5. #5
    Membre extrêmement actif Avatar de Mister Nono
    Homme Profil pro
    Ingénieur Mathématiques et Informatique
    Inscrit en
    Septembre 2002
    Messages
    2 242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur Mathématiques et Informatique
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 242
    Par défaut
    Citation Envoyé par Feanorin Voir le message
    Bonjour



    Ce n'est pas défini de base dans les View, tu peux te créer ton composant personnalisé avec un nouveau paramètres depuis le xml .

    Sinon la méthode classique, tu rajoutes un view dans ton xml juste en dessous de la view ou tu veux rajouter ta ligne de séparation.

    En fait pour faire simple ta View ajouter sera ta ligne de séparation exemple,
    Une ligne horizontale :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     <View
        android:layout_width="fill_parent"
            android:layout_height="1px"
            android:background="#FF909090" />
    C'est la solution que j'ai utilisé mais je l'ai codé dans java pour pouvoir la réutiliser plusieurs fois dans la vue.

    En fait, je n'ai pas trouvé comment réutiliser une view XML plusieurs fois sans que cela génère une erreur : dont je l'ai codé.

    Si tu sais comment faire ce dernier point, je suis preneur.

    Au fait : +1

    A+

  6. #6
    Membre Expert
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Par défaut
    Citation Envoyé par Mister Nono Voir le message
    En fait, je n'ai pas trouvé comment réutiliser une view XML plusieurs fois sans que cela génère une erreur : dont je l'ai codé.

    Si tu sais comment faire ce dernier point, je suis preneur.
    LayoutInflater ?
    Code java : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    LayoutInflater mInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    View v= mInflater.inflate(R.layout.my_divider_line, parent, false);
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

  7. #7
    Membre extrêmement actif Avatar de Mister Nono
    Homme Profil pro
    Ingénieur Mathématiques et Informatique
    Inscrit en
    Septembre 2002
    Messages
    2 242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur Mathématiques et Informatique
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 242
    Par défaut
    Citation Envoyé par Hephaistos007 Voir le message
    LayoutInflater ?
    Code java :
    Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3

    LayoutInflater mInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); View v= mInflater.inflate(R.layout.my_divider_line, parent, false);
    Je te remercie pour ton aide mais je l'ai mis en place sans succès.

    Je veux pouvoir reproduire le menu suivant (fichier : menu_contact.xml) :
    En fait, c'est le même problème de reproductibilité que la ligne de séparation

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
     
    <?xml version="1.0" encoding="utf-8"?>
     
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="2dp"
        android:background="#ffffff"
        android:gravity="center"
        android:orientation="horizontal"
        android:paddingBottom="4dp"
        android:paddingTop="4dp"
        android:id="@+id/menu_contact"
        android:weightSum="1.00" >
     
        <Button
            android:id="@+id/menu_contact_call"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:drawableLeft="@drawable/call_contact"
            android:gravity="center"
            android:onClick="selfCall" />
     
        <Button
            android:id="@+id/menu_contact_send"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:drawableLeft="@drawable/send_contact"
            android:gravity="center"
            android:onClick="selfSend" />
     
    </LinearLayout>
    ... avec le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    LinearLayout ll = (LinearLayout) findViewById(R.id.annonces_root);
            LayoutInflater mInflater = (LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE);
            View v= mInflater.inflate(R.layout.menu_contact, ll, false);
            ll.addView(v);
    ... sachant que le fichier correspond à l'activité est le suivant (fichier : annonces.xml) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
     
     
    <?xml version="1.0" encoding="utf-8"?>
     
    <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/scroller"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:fillViewport="true" >
     
    <LinearLayout
        android:id="@+id/annonces_root"
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content"
        android:background="#ffffff" 
        android:weightSum="1.0"
        android:orientation="vertical"
        >
     
        <ImageView android:id="@+id/annonces_banniere"
            android:layout_width="fill_parent" 
            android:layout_height="wrap_content"
            android:scaleType="center"
            android:layout_marginTop="2dp" 
            android:contentDescription="@string/app_name" />
     
     
        <LinearLayout android:layout_width="fill_parent"
            android:layout_height="wrap_content" 
            android:background="#ffffff"
            android:layout_marginLeft="2dp" 
            android:paddingTop="0dp"
            android:paddingBottom="10dp"
            android:weightSum="1.0" 
            android:orientation="horizontal">
     
            <TextView android:id="@+id/annonces_preferences"
                android:textColor="#35bbed" 
                android:textStyle="bold"
                android:textSize="11dp"
                android:layout_width="0dp" 
                android:layout_weight="0.90"
                android:layout_height="wrap_content"
                android:layout_marginLeft="10dp"
                android:text="@string/app_name"
                android:layout_marginBottom="5dp"
                android:textAppearance="?android:attr/textAppearanceSmall"
                />
     
            <Button android:id="@+id/annonces_refresh" 
                android:gravity="center"
                android:layout_width="0dp" 
                android:layout_weight="0.10"
                android:layout_height="wrap_content" 
                android:layout_marginTop="20dp"
                android:layout_marginRight="10dp"
                android:maxHeight="20dp"
                android:maxWidth="20dp" />
     
        </LinearLayout>
     
        <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
            android:orientation="vertical" 
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" 
            android:id="@+id/annonces_layoutOfDynamicContent">
     
        </LinearLayout>
     
    </LinearLayout>
     
    </ScrollView>
    Peux-tu m'aider à comprendre enfin le soucis ?

    Merci encore.

    A+

  8. #8
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Mars 2012
    Messages : 32
    Par défaut
    Citation Envoyé par Mister Nono Voir le message
    Je te remercie pour ton aide mais je l'ai mis en place sans succès.

    Je veux pouvoir reproduire le menu suivant (fichier : menu_contact.xml) :
    En fait, c'est le même problème de reproductibilité que la ligne de séparation

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
     
    <?xml version="1.0" encoding="utf-8"?>
     
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="2dp"
        android:background="#ffffff"
        android:gravity="center"
        android:orientation="horizontal"
        android:paddingBottom="4dp"
        android:paddingTop="4dp"
        android:id="@+id/menu_contact"
        android:weightSum="1.00" >
     
        <Button
            android:id="@+id/menu_contact_call"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:drawableLeft="@drawable/call_contact"
            android:gravity="center"
            android:onClick="selfCall" />
     
        <Button
            android:id="@+id/menu_contact_send"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:drawableLeft="@drawable/send_contact"
            android:gravity="center"
            android:onClick="selfSend" />
     
    </LinearLayout>
    ... avec le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    LinearLayout ll = (LinearLayout) findViewById(R.id.annonces_root);
            LayoutInflater mInflater = (LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE);
            View v= mInflater.inflate(R.layout.menu_contact, ll, false);
            ll.addView(v);
    ... sachant que le fichier correspond à l'activité est le suivant (fichier : annonces.xml) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
     
     
    <?xml version="1.0" encoding="utf-8"?>
     
    <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/scroller"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:fillViewport="true" >
     
    <LinearLayout
        android:id="@+id/annonces_root"
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content"
        android:background="#ffffff" 
        android:weightSum="1.0"
        android:orientation="vertical"
        >
     
        <ImageView android:id="@+id/annonces_banniere"
            android:layout_width="fill_parent" 
            android:layout_height="wrap_content"
            android:scaleType="center"
            android:layout_marginTop="2dp" 
            android:contentDescription="@string/app_name" />
     
     
        <LinearLayout android:layout_width="fill_parent"
            android:layout_height="wrap_content" 
            android:background="#ffffff"
            android:layout_marginLeft="2dp" 
            android:paddingTop="0dp"
            android:paddingBottom="10dp"
            android:weightSum="1.0" 
            android:orientation="horizontal">
     
            <TextView android:id="@+id/annonces_preferences"
                android:textColor="#35bbed" 
                android:textStyle="bold"
                android:textSize="11dp"
                android:layout_width="0dp" 
                android:layout_weight="0.90"
                android:layout_height="wrap_content"
                android:layout_marginLeft="10dp"
                android:text="@string/app_name"
                android:layout_marginBottom="5dp"
                android:textAppearance="?android:attr/textAppearanceSmall"
                />
     
            <Button android:id="@+id/annonces_refresh" 
                android:gravity="center"
                android:layout_width="0dp" 
                android:layout_weight="0.10"
                android:layout_height="wrap_content" 
                android:layout_marginTop="20dp"
                android:layout_marginRight="10dp"
                android:maxHeight="20dp"
                android:maxWidth="20dp" />
     
        </LinearLayout>
     
        <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
            android:orientation="vertical" 
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" 
            android:id="@+id/annonces_layoutOfDynamicContent">
     
        </LinearLayout>
     
    </LinearLayout>
     
    </ScrollView>
    Peux-tu m'aider à comprendre enfin le soucis ?

    Merci encore.

    A+
    Salut, sans te préoccuper d'une insertion, tu peux augmenter les marges hautes et basses afin de créer graphiquement une ligne de séparation:

    android:layout_Margin_top="25dp"
    android:layout_Margin_bottom="25dp"

    ou encore insert une layout horizontal dont tu modifier le background,

    voilou ::http://developer.android.com/referen...outParams.html

  9. #9
    Membre Expert
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Par défaut
    Citation Envoyé par Mister Nono Voir le message
    Je cherche à ajouter une ligne de division (ou une ligne de séparation) après un LinearLayout comme par exemple la ligne de séparation utilisée par défaut par une ListView.
    En regardant la doc, je tombe là dessus :
    http://developer.android.com/referen...ml#getDivider()
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

Discussions similaires

  1. Réponses: 3
    Dernier message: 16/08/2006, 17h32
  2. [C#]Ligne de séparation
    Par bilb0t dans le forum Windows Forms
    Réponses: 4
    Dernier message: 18/05/2006, 11h44
  3. Ligne de séparation dans un menu
    Par zako dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 12/05/2006, 10h55
  4. MFC - créer une ligne de séparation
    Par Amphitryon dans le forum MFC
    Réponses: 4
    Dernier message: 25/11/2004, 16h54
  5. Réponses: 4
    Dernier message: 02/09/2004, 14h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo