Вычислить SpannableString witdh

Я создаю текст во время выполнения, который будет помещен в TextView. Этот текст составлен шрифтами разного размера. Я должен рассчитать ширину этого текста в пикселях. Я пробовал использовать Paint.measureText, но он не учитывает разные размеры шрифта. Как я могу вычислить реальную ширину?

это пример:

LinearLayout text = (LinearLayout) findViewById(R.id.LinearLayout);

SpannableStringBuilder str = new SpannableStringBuilder("0123456789");
str.setSpan(new RelativeSizeSpan(2f), 3, 6, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);

TextView tmp = new TextView(this);
tmp.setText(str,BufferType.SPANNABLE);
text.addView(tmp);

Float dim = tmp.getPaint().measureText(str, 0, str.length());

В этом примере, если я установил относительный размер на «2f» или «3f» (например), общий размер, который возвращает «MeasureText» то же самое.

Спасибо

5
задан vittochan 23 November 2010 в 14:30
поделиться