Aller au contenu

Comment faire pour avoir deux textes variables qui se suivent ?


galldup

Recommended Posts

Bonjour,

Je travaille sur un programme qui consiste à faire afficher à l'écran deux textes dynamiques qui

se suivent automatiquement.

Je voudrais que mes deux textes (variable text et text_tempo) se suivent sur l'écran

quelque que soit leurs tailles...

Tout d'abord, voici mon layout :

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

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:scrollbars="vertical">

android:id="@+id/text"

android:background="@drawable/box"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

/>

android:id="@+id/text_tempo"

android:background="@drawable/box"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_toRightOf="@+id/text"

/>

Avec le code que j'ai mis ci dessus, cela fonctionne mais le deuxième texte (text_tempo) ne saute pas à la ligne alors que je le voudrais...

Par exemple, si j'ai : text = "mon texte et"

text_tempo = "mon texte tempo"

A l'écran, cela donne :

_______________

| mon texte et |

| mon |

| texte |

| temp |

| o|

Moi, je voudrais avoir ça :

_______________

| mon texte et |

| mon texte tempo |

| |

tout en sachant que mon texte (text) s'enrichit au fur et à mesure : Ce qui devrait donner à l'écran :

_______________

| mon texte s'est |

| enrichis et mon |

| texte tempo |

| |

Connaissez vous l'astuce ?

Edit : précision, j'arrive exactement au même résultat avec un LinearLayout :

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

android:orientation="horizontal"

android:layout_width="wrap_content"

android:layout_height="wrap_content">

android:id="@+id/text"

android:background="@drawable/box"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

/>

android:id="@+id/text_tempo"

android:background="@drawable/box"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_alignBottom="@+id/text"

/>

Lien vers le commentaire
Partager sur d’autres sites

Si mais le problème, c'est que je souhaite mettre deux couleurs différentes pour les deux variables.

Par exemple, la variable text en gris et la variable tempo en bleue.

C'est pour ça que j'ai crée deux objets textviews...

Lien vers le commentaire
Partager sur d’autres sites

Plus simplement, ton align_Bottom me parait plus que suspicieux : ca veut dire ( si je ne me plante pas, il faut etre précautionneux avec les balises des layout relative ) que tu veux que les bas de tes deux champs soient sur la meme ligne.

Bon je ne comprends pas pourquoi ca fait ce que nous montre, mais il me semble qu'un bete "below" serait plus adapté.

Et puis, si c'est juste pour aligner des champs les uns sont les autres, prends carrément un linear layout !

Emmanuel / Alocaly

Lien vers le commentaire
Partager sur d’autres sites

J'ai laissé tombé les RelativeLayout, car c'était trop dur à utiliser

Je n'utilise plus que le LinearLayout (quasi exclusivement), car je suis sûr à 100% du résultat obtenu

Certe, le RelativeLayout permet d'avoir moins de View, mais le placement est beaucoup plus galère :/

Lien vers le commentaire
Partager sur d’autres sites

En fait, j'ai trouvé la soluce avec ça :

mText.setText(texte);

Spannable spannable = (Spannable) mText.getText();

spannable.setSpan(android.graphics.Typeface.ITALIC, 20, mText.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);

spannable.setSpan(new ForegroundColorSpan(0xFFFFFF00), 0, mText.length()-1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);

Un moment, j'ai galéré car j'ai du caster en ajoutant spannable pour que le tout fonctionne.

Sinon, j'aime bien le relative layout, disons que cela répond à un besoin précis...

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...