Как рассчитать ширину шрифта строки в пикселях?
Я хочу рассчитать ширину шрифта строки в пикселях в андроиде. У меня есть строковый массив, и я добавляю все эти элементы массива для создания одной строки. поэтому я должен установить фиксированное расстояние между двумя последовательными элементами массива. Я помещаю эту финальную строку в textview. Наконец, я добавляю этот текст в tablerow. Короче, я хочу просмотреть структуру таблицы с заголовком и значениями. Я видел много сообщений здесь, но не получал решения для этого.
Спасибо заранее...!!!
Ответы
Ответ 1
Похоже, существует метод measureText
, доступный на Paint
. Я также нашел example:
mPaint = new Paint();
mPaint.setAntiAlias(true);
mPaint.setStrokeWidth(5);
mPaint.setStrokeCap(Paint.Cap.ROUND);
mPaint.setTextSize(64);
mPaint.setTypeface(Typeface.create(Typeface.SERIF, Typeface.ITALIC));
// ...
float w = mPaint.measureText(text, 0, text.length());
Ответ 2
Спасибо Джейку за рабочее решение, но я нашел, что это тоже работает для меня:
someText = "Lorem Ipsum";
TextView myTextView = (TextView) findViewById(R.id.myTextView);
float w = myTextView.getPaint().measureText(someText);
Получение Paint непосредственно из TextView, с которым я буду работать, заставляет меня чувствовать, что anwser будет более точным.
Ответ 3
Я не знаю, работает ли это, но может.
int textSize=20;
Paint p=new Paint();
p.setTextSize(textSize);
String string="Hello im a string.";
public int getStringWidt()
{
return string.length*textSize;
}