我正在尝试将上标和下标文本插入到android按钮文本中。 我试过在strings.xml文件中给出以下内容
<string name="NAME"><![CDATA[<sup><small>-1</small></sup>]]></string>
在MainActivity.java文件中,
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
if (savedInstanceState == null) {
getSupportFragmentManager().beginTransaction()
.add(R.id.container, new PlaceholderFragment()).commit();
}
Button NAME = (Button) findViewById(R.id.button10);
NAME.setText(Html.fromHtml(getResources().getString(R.string.NAME)));
}
但我无法成功。
查询:
答案 0 :(得分:1)
问题: 你拿错了价值。
<强>解决方案:强>
使用R.string.NAME
代替R.string.iHyperbolic
您的NAME
带有html字符串,而不是iHyperbolic
。
有没有办法在&#34; strings.xml&#34;中指定它?文件本身没有 在代码中使用setText?
AFAIK,您必须使用setText()在Html类处理之后设置html字符串。原因Html类将HTML字符串处理为可显示的样式文本。如果您希望在窗口小部件上显示此Html样式文本,则必须使用setText()。
答案 1 :(得分:0)
而不是写作:
<sup><small>-1</small></sup>
尝试写作:
<sup>-1</sup>
希望有帮助:)