我正在制作数学工具,并且我的图形表示遇到了一些麻烦。
我试图上标一些字符串,我使用的方法是
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添加多个字母时,一切都归结为一行上标已经丢失。