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

Composants graphiques Android Discussion :

Réalisation Layout dynamique


Sujet :

Composants graphiques Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    757
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 757
    Par défaut Réalisation Layout dynamique
    Bonjour à tous,

    J'essaie depuis quelques heures de créer un layout dynamique contenant 3 TextView et deux séparateurs (cf pièce jointe).

    J'aimerai que le TextView du milieu soit toujours à égale distance des deux autres TextView, et que les séparateurs soient au milieu de leur "trou".

    Pour le moment mon layout ressemble à ça :

    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
    <LinearLayout
        android:id="@+id/infos"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
     
        <View android:style="@style/divider"/>
     
        <TextView
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:gravity="left"
            android:text="Texte de gauche" />
     
        <View android:style="@style/divider"/>
     
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Milieu" />
     
        <View android:style="@style/divider"/>  
     
        <TextView
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:gravity="right"
            android:text="Texte de droite" />
     
    </LinearLayout>
    Merci d'avance
    Images attachées Images attachées  

  2. #2
    Membre prolifique
    Avatar de Ryu2000
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2008
    Messages
    10 264
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2008
    Messages : 10 264
    Par défaut
    Est-ce que si tu utilises un RelativeLayout que tu met :
    TextView 1 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    android:layout_alignParentLeft="true"
    TextView 3 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    android:layout_alignParentRight="true"
    Tu mets un séparateur à la droite de TextView 1.
    Tu mets un séparateur à la gauche de TextView 3.

    Tu mets TextView 2 entre les deux séparateur et ça correspondra peut être à ce que tu veux.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    android:layout_toRightOf="@+id/separateur1"
    android:layout_toLeftOf="@+id/separateur2"

  3. #3
    Membre émérite
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    757
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 757
    Par défaut
    En effet, il manque juste le fait que les séparateurs soient centrés dans leur "espace libre"...

    Mais je pense qu'on approche du résultat final

  4. #4
    Membre émérite
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    757
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 757
    Par défaut
    Voilà où ça en est à l'heure d'aujourd'hui :
    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
    <LinearLayout
        android:id="@+id/infos"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
     
        <View android:style="@style/divider"/>
     
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="left"
            android:text="Texte de gauche" />
     
        <View android:style="@style/divider"/>
     
        <TextView
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="Milieu" />
     
        <View android:style="@style/divider"/>  
     
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="right"
            android:text="Texte de droite" />
     
    </LinearLayout>
    Le texte du milieu est enfin centré par rapport aux espaces vides, mais il reste toujours le problème des dividers qui ne sont pas centrés...

  5. #5
    Expert confirmé

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Billets dans le blog
    3
    Par défaut
    Puisque le but est de positionner des views relativement à d'autre, il FAUT utiliser un RelativeLayout...

    On commence par les 3 text-view... en wrap-content....
    Ensuite avec le relative layout, on dessine le séparateur (là j'ai utilisé des ImageView).

    A noter qu'il est possible de placer les textView différemment (en utilisant un autre layout même si il faut).

    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
     
    <?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/RelativeLayout1"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical" >
     
        <TextView
            android:id="@+id/textView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentTop="true"
            android:text="Text1"
            android:textAppearance="?android:attr/textAppearanceMedium" />
     
        <TextView
            android:id="@+id/textView2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_centerHorizontal="true"
            android:text="Text2"
            android:textAppearance="?android:attr/textAppearanceMedium" />
     
        <TextView
            android:id="@+id/textView3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_alignParentTop="true"
            android:text="Text3"
            android:textAppearance="?android:attr/textAppearanceMedium" />
     
        <ImageView
            android:id="@+id/imageView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_alignBottom="@id/textView1"
            android:layout_toLeftOf="@+id/textView2"
            android:layout_toRightOf="@id/textView1"
            android:scaleType="centerInside"
            android:src="@drawable/vertical_divider" />
     
        <ImageView
            android:id="@+id/imageView2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_alignBottom="@id/textView1"
            android:layout_toLeftOf="@+id/textView3"
            android:layout_toRightOf="@id/textView2"
            android:scaleType="centerInside"
            android:src="@drawable/vertical_divider" />
     
    </RelativeLayout>

  6. #6
    Membre émérite
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    757
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 757
    Par défaut
    Merci, mais là le problème est que l'item du milieu est toujours centré dans la page (alors que j'aimerais qu'il soit centré entre l'item gauche et l'item droit, quelque soit la taille des textes)

Discussions similaires

  1. Layout Dynamique : texte et bouton dans un tablerow
    Par gilloddon dans le forum Composants graphiques
    Réponses: 4
    Dernier message: 26/03/2012, 21h58
  2. Modifier un titre dans un layout dynamiquement
    Par edblv dans le forum Ext JS / Sencha
    Réponses: 4
    Dernier message: 19/03/2012, 10h10
  3. Layout Dynamique ?
    Par bennour.mohamed dans le forum Composants graphiques
    Réponses: 4
    Dernier message: 26/09/2011, 13h18
  4. Layout dynamique avec Tiles
    Par zulot dans le forum Développement Web en Java
    Réponses: 0
    Dernier message: 04/02/2011, 11h51
  5. [GridLayout] Layout dynamique
    Par mister3957 dans le forum Agents de placement/Fenêtres
    Réponses: 3
    Dernier message: 24/10/2005, 09h51

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