Je suis tyrienie pour afficher un TextView qui contient deux phrases et je veux qu'ils soient l'une après l'autre comme ceci:
<style name="f15"> <item name="android:typeface">sans</item> <item name="android:textSize">17dp</item> <item name="android:textStyle">normal</item> <item name="android:textColor">@color/grey_dark_emperor</item> </style>
6 Réponses :
Vous pouvez utiliser des balises HTML pour obtenir l'effet souhaité avec une vue de texte unique. Vérifiez Ce et Ceci et aussi Ce . P>
Je veux ajouter différents styles pour chaque phrase, donc j'ai besoin de support pour les styles de mise en page
Avez-vous vérifié les balises dans le blog de Commonsware que j'avais mentionnées? Il existe de nombreux paramètres pour changer le style du texte que vous souhaitez. Ne pouvez-vous pas utiliser
Vous pouvez utiliser HTML pour afficher votre texte
myTextView.setText(Html.fromHtml("<h2>Title</h2><br><p>Description here</p>"));
Je veux ajouter différents styles pour chaque phrase, donc j'ai besoin de support pour les styles de mise en page
Vous pouvez essayer d'utiliser le SpannablestringBuilder comme suit:
String firstString = "AAAAAA: "; String secondString = "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB"; SpannableStringBuilder stringBuilder = new SpannableStringBuilder(firstString + secondString); stringBuilder.setSpan(new StyleSpan(android.graphics.Typeface.BOLD), 0, firstString.length(), Spannable.SPAN_INCLUSIVE_INCLUSIVE); stringBuilder.setSpan(new ForegroundColorSpan(Color.rgb(255, 0, 0)), firstString.length() + 1, firstString.length() + secondString.length(), Spannable.SPAN_INCLUSIVE_INCLUSIVE); textView.setText(stringBuilder);
Puis-je ajouter un soutien aux styles? Je n'ai pas mentionné cette phrase A ... et B ... avoir des styles différents
Oui, vous pouvez utiliser TextAppeAranceBan en tant que paramètre à la fonction SetSpan Pour définir la couleur du texte, la taille, le style et la police de caractères.
J'ai essayé tant de solution, mais celui-ci m'a vraiment aidé à faire du Texview de Widget en différentes couleurs pour deux phrases en simple TextView.
<RelativeLayout android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:id="@+id/first_text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="AAAAAA: BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB" /> </RelativeLayout> Use this as xml.
Comme je l'ai mentionné un ... & B ... ne sont pas constants et diffèrent
Ensuite, vous pouvez définir de manière programmative le texte.
Ok ... vous devez les stortez par programme. Veuillez préciser le style que vous souhaitez donner à chacun d'eux? Vous pouvez atteindre cela à l'aide de SpannableString.
Veuillez vous reporter à la réponse de Lexmiir.
Puis-je ajouter des styles via SpannableString?
Veuillez référer la réponse de Lexmiir ci-dessus. C'est exactement ce que je veux vous dire.
En utilisant Single TextView uniquement, vous ne pourrez le faire. Vous devez juste ajouter deux chaînes en Single View.
Je veux ajouter différents styles pour chaque phrase, donc j'ai besoin de support pour les styles de mise en page
u avez écrit la position du deuxième texte à droite du premier texte.
android:layout_toRightOf="@id/first_text"
Utilisez-vous 2 TextViews pour une raison? Je pense que cela peut être facilement fait avec un seul TextView. De cette façon, l'emballage sera automatiquement effectué comme vous le souhaitez.
Regardez à l'aide d'utiliser Spanablestring dans un seul TextView
u a dit que la taille d'A & B n'est pas constante..Ce signifie que la valeur est dynamique RT?
J'utilise ou que je préfère utiliser, un TextView