NeToster
@NeToster

Как из String(текста) получить width textView?

У меня есть строка, можно ли узнать ширину textview? (задача в том что мне нужно узнать размер textView до его создания и не один метод не дает мне его ширины, хочу узнать можно ли получить из текста)
Мой метод onDraw, может кто-то подскажет что мешает получить его ширину
public void onDraw(Canvas canvas) {
        super.onDraw(canvas);

        @SuppressLint("DrawAllocation")
        Paint.FontMetrics fm = new Paint.FontMetrics();
        mTxtPaint.setColor(Color.RED);
        mTxtPaint.setTextSize(40.0f);

        mTxtPaint.getFontMetrics(fm);
        mTxtPaint.isAntiAlias();

        int margin = 5;

        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
            canvas.drawRoundRect(90 - margin, 100 + fm.top - margin,
                                 115 + mTxtPaint.measureText(str) + margin, 100 + fm.bottom + margin,35,35, mTxtPaint);
        }
        mTxtPaint.setColor(Color.WHITE);
        canvas.drawText(str, 100, 100, mTxtPaint);

    }
  • Вопрос задан
  • 87 просмотров
Решения вопроса 1
dimkss
@dimkss
Мне кажется вам надо плясать от ширины текста.

int widthOfText = fm.stringWidth(text);

https://stackoverflow.com/questions/258486/calcula...
https://stackoverflow.com/questions/18327825/how-d...
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы