galldup Posté(e) 13 juin 2010 Posté(e) 13 juin 2010 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" />
eephyne Posté(e) 13 juin 2010 Posté(e) 13 juin 2010 tu peut pas faire text += text_tempo , à chaque fois que tu modifie la variable text ?
galldup Posté(e) 13 juin 2010 Auteur Posté(e) 13 juin 2010 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...
eephyne Posté(e) 13 juin 2010 Posté(e) 13 juin 2010 je dit peut être une bétise parceque j'utilise pas beaucoup les interface encore mais si tu inclus le deuxième textbox à l'intérieur du premier (est ce seulement possible?) , ça donnerait quoi?
Profete162 Posté(e) 13 juin 2010 Posté(e) 13 juin 2010 tu peux aussi jouer avec cela: http://stackoverflow.com/questions/2912208/what-options-i-have-to-show-a-sentence-parts-with-different-color
galldup Posté(e) 13 juin 2010 Auteur Posté(e) 13 juin 2010 A eephyne : C'est pas bête mais un peu bidouille, non ? A Profete162, Pierre87 : Ca m'a l'air pas mal. Je vais essayer ça.
Alocaly Posté(e) 14 juin 2010 Posté(e) 14 juin 2010 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
Pierre87 Posté(e) 14 juin 2010 Posté(e) 14 juin 2010 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 :/
galldup Posté(e) 14 juin 2010 Auteur Posté(e) 14 juin 2010 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...
Recommended Posts
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.