для textView с переносами уже не работает (по-крайней мере, в Android 9): https://stackoverflow.com/questions/14386584/getmeasuredheight-of-textview-with-wrapped-text
Знает кто-нибудь, как всё-таки вычислить высоту текста textView с учётом строки, разбитой переносами? 😕
В общем, нельзя так, да? 😶
А в пикселах не пойдет?
То есть берем textView, вызываем у него layoutParams, и хватаем из него height?¯\_(ツ)_/¯
Если надо в dp, то для этого есть соответствуюшие методы базовых библиотек
Если мой ответ устроит, то я не откажусь от репутации на стакОверФлоу.
В смысле "не пойдёт"? Так я ж и пытаюсь безуспешно вытащить высоту текста в пикселях — только чтобы высота правильно посчитана была. А то решения по ссылкам даже 100 слов, разбитых на 10 строк, считают за одну 😐
Попробуйте так val tv = findViewById<TextView>(R.id.tv_address) val layPar = tv.layoutParams val height = layPar.height val heightInDp = TypedValue.applyDimension( TypedValue.COMPLEX_UNIT_SP, height, resources.displayMetrics)
Спасибо, сейчас попробую. Если получится конвертировать это на Delphi — отпишусь о результате 👍
Лучше tv.height как фактическую высоту
Если вопрос к числу то double приведенный к десятичному без разумного округления именно так и выглядит
Ну не знаю какая там задача. На глаз 80 дп, пикселей 300 на типичном аппарате
Layout params дает пиксели а 2.5 вероятно пересчет их в dp для данного аппарата
Да нет никакой задачи. Просто узнать текущую высоту текста — и всё.
Берешь и запрашиваешь у элемента где он находится (если нужен весь элемент) getHeight. Только в тот момент когда он уже известен и все на экране устакнилось, иначе там ноль. Или переопредеояешь у вью с текстом onDraw и запрашиваешь высоту канвы
Обсуждают сегодня