Я измеряю текст строки, чтобы увидеть, должен ли я добавить \n
для переноса.
Я использую функцию Paint.measureText
, и она работает большую часть времени, но мне приходит в голову, что это не точно, поскольку px не равно dp - я видел в Интернете, как конвертировать пиксели в dp, но вместо этого что Я бы предпочел, например, преобразовать px в процент от размера экрана.
Если a
имеет ширину 8 пикселей, как бы я сказал:
float LetterWidthPercent = _______ //get width of character in percent of screen width
float LetterHeightPercent = _______ //get height of character in percent of screen height
Таким образом, я мог просто видеть:
if (LineOfTextWidth >= ScreenWidth * 0.9f) //90%
Эту функцию было бы очень полезно иметь под рукой.
getWindowManager().getDefaultDisplay().getMetrics(metrics)
и деление на него измеренной ширины текста? (что касается вашего собственного вопроса, который вы упомянули, просто установите fontSize на основе ширины экранаdp
и т. д.) - person Konstantin Loginov   schedule 01.02.2016