J'ai des chaînes fixes à l'intérieur de moi strings.xml
, quelque chose comme:
<resources>
<string name="somestring">
<B>Title</B><BR/>
Content
</string>
</resources>
et dans ma mise en page, j'en ai un TextView
que j'aimerais remplir avec la chaîne au format html.
<TextView android:id="@+id/formattedtext"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/htmlstring"/>
si je fais cela, le contenu de formattedtext
est juste le contenu somestring
de toute balise html et donc non formaté.
Je sais qu'il est possible de définir le texte formaté par programmation avec
.setText(Html.fromHtml(somestring));
car je l'utilise dans d'autres parties de mon programme où il fonctionne comme prévu.
Pour appeler cette fonction, j'ai besoin d'un Activity
, mais pour le moment ma mise en page n'est qu'une simple vue plus ou moins statique en XML simple et je préfère le laisser de cette façon, pour me sauver de la surcharge de création d'un Activity
juste pour en définir texte.
Suis-je en train d'oublier quelque chose d'évident? N'est-ce pas possible du tout? Toute aide ou solution de contournement est la bienvenue!
Edit: Je viens d'essayer certaines choses et il semble que le formatage HTML en xml ait quelques contraintes:
les balises doivent être écrites en minuscules
certaines balises mentionnées ici ne fonctionnent pas, par exemple
<br/>
(il est possible d'utiliser à la\n
place)