测量多行TextView的高度

时间:2018-05-28 20:17:16

标签: android textview multiline

我创建了一组包含子视图的自定义视图。该子视图可能会根据可用空间显示其部分或全部子视图。应隐藏不适合的辅助元素。其中一个子视图是多行TextView,可能适合也可能不适合。

为此,我需要计算TextView的高度。它理解应该在视图完全膨胀时完成,因此我在OnGlobalLayoutListener中设置文本,然后尝试获取测量值。

这很好用,例如对于ImageViewTextView的高度似乎是相同的,无论它显示多少行文字。因此,textView.getHeight()textView.getMeasuredHeight()都不会获得多行TextView的实际高度。我怎么能得到它?

1 个答案:

答案 0 :(得分:1)

如果我理解正确,您可以在$client = DB::connection('dpnmwin')-> table('nmtrabajador')-> select(\DB::raw('SUBSTRING(COD_UND, 1, 4) as COD_UND'))-> where('CONDICION', '=', 'A')-> get() 回调中的setText上致电TextView吗?

那时,身高还没有计算出来。

你应该:

1)在回调之前立即设置文本。然后在回调中获得高度。

2)在OnGlobalLayoutListener回调中调用TextView上的post(Runnable)。在runnable中,您可以获得TextView高度。