对不起,我的英语不足以清楚地解释我想要什么,也许这就是我在谷歌上找不到答案的原因。
当您使用真正的书籍时 - 有时您有一些需要解释的文本,然后在该文本之后您会在页面底部的一行下方有“*”符号和解释。
有时它不是一个“*”,它是最后一个单词顶部的一个小数字。如“1”、“2”等,然后在页面底部的一行下方进行相同的说明。
我需要知道的 - java/Android SDK 中是否有任何工具可以让这个数字很小并且在 TextView 的顶部?
就像,也许跨接字符串可以做到这一点?
产生这样的最简单的方法Spanned
是使用 Html 实用程序类:
textView.setText(Html.fromHtml("book<sup>1</sup>"));
测试演示
public class MainActivity extends Activity {
TextView textView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textView = (TextView) findViewById(R.id.textView);
textView.setText(Html.fromHtml("Hi this demo test for book reading effect <sup>2</sup>"));
}
}
输出:
您可以实现这两种方式。
1)使用上标跨度:
SpannableString span = new SpannableString("book1");
span.setSpan(new SuperscriptSpan(), 4, 5,
Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
txt.setText(span, BufferType.SPANNABLE);
2)使用HTML:
txt.setText(Html.fromHtml("book<sup>1</sup>"));