2013-08-02 138 views
1

我有一个连接了适配器的ListView。背后的数据是几篇文章。这些文章有一个标题和一个小标题,两者的长度都不相同。 有时,任何一个的文本太长,以至于TextView不适合具有固定高度的适配器创建的视图。 是否有可能确定两个TextViews在视图中是否完全可见? 我知道我将不得不等待要绘制的布局,将与做getViewTreeObserver().addOnGlobalLayoutListener(...)检查TextView是否完全可见

enter image description here

回答

2

好像你可以为每个标题和副标题仅完全贴合两行。如果我是你,我会用用来绘制它的颜料来测量文本的长度,看它是否小于(线宽)*(线数)。

例如,请考虑以下几点:

boolean doesTitleFitBounds = titleTextView.getPaint().measureText(titleText) < (TITLE_LINE_WIDTH * TITLE_NUM_ROWS); 

其中TITLE_LINE_WIDTH是在像素文本可用宽度(占补白/利润率等)和TITLE_NUM_ROWS是你每题有行数。 同样,您可以检查字幕以查看它是否适合自己的边界。

+0

好主意,谢谢! – FWeigl