Как улучшить шрифт TextButton на Android - PullRequest
0 голосов
/ 14 марта 2012

У меня есть несколько квадратных TextViews (с различными динамическими размерами (я не знаю их во время разработки)) в моем Приложении и хочу установить их текст.Но если я скажу TextView.setText ();шрифт текста довольно маленький.Если я устанавливаю TextView.setFontSize, иногда текст отображается не полностью (помните: они имеют динамический размер).Итак, мой вопрос: как я могу придать тексту идеальный шрифт (используя все пространство кнопки и быть полностью отображаемым) или сделать текст квадратным, чтобы он занимал все пространство TextView?Спасибо

Ответы [ 3 ]

0 голосов
/ 14 марта 2012

Я думаю, вам нужно будет рассчитать высоту кнопки и текст, который вы хотите установить. Вам понадобятся следующие API: Paint.getTextBounds () и View.getHeight ().

0 голосов
/ 14 марта 2012

Вы можете использовать Paint.getTextBounds () , например:

int textViewWidth = textView.getMeasuredWidth();
float textSize = 1.0;
do {
    textSize += 0.5
    textView.setTextSize(textSize);
    Paint textPaint = textView.getPaint();
    textPaint.getTextBounds(text, 0, text.length(), rect);
    int width = rect.width();
} while (width < textViewWidth);

textView.setTextSize(textSize - 0.5);
0 голосов
/ 14 марта 2012

Просматривая документацию , похоже, что вы сможете использовать что-то вроде этого:

TextView tv = (TextView) findViewById(R.id.myTextView);
tv.setTextScaleX(tv.getWidth());

Это масштабирует ширину вашего текста до ширины TextView.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...