无法在textView中显示下标文本

时间:2013-03-18 21:18:13

标签: java android eclipse textview subscript

我对Android很新,我试图在textView中显示一些化学公式,它包含在customListView中。 我从xml解析中获取所有数据,然后我希望显示公式,例如C₉H₈O4。 但我只能看到1-4位数字。

我正以这种方式从“正常”转换为“下标”

str = str.replaceAll("0", "\u2080");
str = str.replaceAll("1", "\u2081");
str = str.replaceAll("2", "\u2082");
str = str.replaceAll("3", "\u2083");
str = str.replaceAll("4", "\u2084");
str = str.replaceAll("5", "\u2085");
str = str.replaceAll("6", "\u2086");
str = str.replaceAll("7", "\u2087");
str = str.replaceAll("8", "\u2088");
str = str.replaceAll("9", "\u2089");

str包含从xml文件中获取的公式。

奇怪的行为是我可以在Logcat中看到应该是的公式。

我也试过海关字体,但没有。

以下是两个结果: 第一个是普通字体,第二个是自定义字体

https://www.dropbox.com/s/jyk64p700up14db/cella.jpg https://www.dropbox.com/s/ab9h1b45j2hrods/Schermata%2003-2456370%20alle%2022.05.45.png

在网络上,我可以使用类似

的内容阅读

的setText(Html.fromHtml( “X <sub>2</sub>”));

但我真的不知道如何在我的情况下使用它。

有什么建议吗?

2 个答案:

答案 0 :(得分:0)

尝试用Html.fromHtml("X<sub>2</sub>")解决问题并不容易 你需要一个可以帮助你实现这个目标的库

(JEuclid是一个完整的MathML渲染解决方案,由:) http://jeuclid.sourceforge.net/

组成

查看示例,您将找到解决问题的方法

使用TeX渲染数学表达式的其他替代方法:

http://jmathtex.sourceforge.net/
http://sourceforge.net/projects/snuggletex/
http://forge.scilab.org/index.php/p/jlatexmath/

答案 1 :(得分:0)

最后我解决了问题:这是一个字体问题。 我刚刚使用Calibri,它有效!