編集:
あなたは効果を確認するためにSuperscriptSpan()
Spannable WordtoSpan = new SpannableString("13.500,27");
WordtoSpan.setSpan(new TextAppearanceSpan(null, 0, 17, null, null), WordtoSpan.length()-2, WordtoSpan.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
WordtoSpan.setSpan(new SuperscriptSpan(), WordtoSpan.length()-2, WordtoSpan.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
増加フォントサイズを使用することができます
私は他の方法を見つけることができませんが、あなたはSpannableStringBuilder
のためにしたい、これまで何スパンを適用し、元spannalbe文字列に
を上付きテキストを追加するために、この を試してみてください
SpannableStringBuilder builder=new SpannableStringBuilder("13.500,");
builder.append(Html.fromHtml("X<sup>27</sup>"))
編集2
以下のようにカスタムスパンを作成すると、スーパーテキストが完全に一番上に整列します。しかし、デフォルトのSuperscriptSpanを使用すると、テキストを上にすることはできませんでした。
public class SuperscriptSpan2 extends MetricAffectingSpan implements
ParcelableSpan {
public SuperscriptSpan2() {
}
public int getSpanTypeId() {
return TextUtils.CAP_MODE_CHARACTERS;
}
public int describeContents() {
return 0;
}
public void writeToParcel(Parcel dest, int flags) {
}
@Override
public void updateDrawState(TextPaint tp) {
tp.baselineShift += (int) (tp.ascent()/1.25);
}
@Override
public void updateMeasureState(TextPaint tp) {
tp.baselineShift += (int) (tp.ascent()/1.25);
}
}
私の答えをチェックしてください – Pragnani