我在第一个答案中使用了找到的代码:Subscript and Superscript a String in Android,但是将其与前一个字符串连接起来,所以我的代码看起来类似于:
TextView text = (TextView) findViewById(R.id.text);
text.setText(text.getText().toString()+Html.fromHtml("<sup>-2</sup>"));
比如说,文本内容为“3x”,在使用setText设置文本后,格式为“3x-2”,没有下标。
TextView的XML是:
<TextView
android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginLeft="55dp"
android:layout_marginTop="210dp"
android:text="3x"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textSize="14pt"
android:visibility="VISIBLE"
/>
感谢您的帮助。
答案 0 :(得分:7)
而不是这一行..
text.setText(text.getText().toString()+Html.fromHtml("<sup>-2</sup>"));
试试这个
text.setText(Html.fromHtml(text.getText().toString()+"<sup>-2</sup>"));
答案 1 :(得分:4)
请检查以下对我的工作正常
"TEXT<sup><small>TM</small></sup> TEXT"
以上代码将使TM成为下标并使文本大小
答案 2 :(得分:2)
对于小尺寸您也可以使用-
text.setText(Html.fromHtml(text.getText().toString()+"<sup><small>-2</small></sup>"));
将整个文本仅放入一个Html.fromHtml("Your whole string")
来自strings.xml
<string name="superscript_str">YourString<sup><small>SuperScriptString</small></sup></string>
答案 3 :(得分:0)
如果您希望将显示视为超文本,请使用
text.setText(Html.fromHtml(text.getText().toString()+"<sup>small>-2</small>/sup>"));