Android NoteX Q12:如何判定textview超出了一行?

fun setContent(content: String?) {
    data.content = content
    contentTv?.apply {
    //比较是否超出了一行
    post {
            paint.textSize = textSize
            val exceedOneLine = paint.measureText(content) > width
            setLines(if (exceedOneLine) 2 else 1)
         }
    }
    contentTv?.text = content
}

有什么用?

譬如UI设计固定高度且要TextView居中对齐且不能超过2行时,因为文本长度不确定,此时就无法确定使用1行还是2行,进而就较难实现居中效果。因此,只要动态设置行数就能解决该问题。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容