我正在制作一个数学工具,但我在它的图形表示上遇到了一些麻烦。
我正在尝试上标一些字符串,而我使用的方法是
tV = (TextView) findViewById(R.id.textView);
String textEAS;
String textEBS;
String textEXS;
String textEYS;
textEAS = "A";
textEBS = "B";
textEXS = "X";
textEYS = "Y";
int lengthA = textEAS.length();
int lengthB = textEBS.length() + lengthA+3;
int lengthX = textEXS.length() + lengthB + lengthA;
int lengthY = textEYS.length();
String textComb = ( textEBS + " * " + textEAS + textEXS + " = " + textEYS);
SpannableStringBuilder cs = new SpannableStringBuilder(textComb);
cs.setSpan(new SuperscriptSpan(), lengthB, lengthX, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
cs.setSpan(new RelativeSizeSpan(0.75f), lengthB, lengthX, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
tV.setText(cs);
它工作正常并输出 B*A^X=Y 之类的文本(带有上标 x),但是当我在字符串 textEXS 中添加多个字母时,一切都下降到一行并且上标丢失了。