检查TextView是否完全可见

时间:2013-08-02 11:17:57

标签: android android-layout textview

我有ListView并附有适配器。背后的数据是几篇文章。这些文章有标题和副标题,两者的长度各不相同。 有时,任何一个文本都很长,TextView不适合具有固定高度的适配器创建的视图。 是否有可能找出TextViews在视图中是否完全可见? 我知道我必须等待绘制布局,才能使用getViewTreeObserver().addOnGlobalLayoutListener(...)

enter image description here

1 个答案:

答案 0 :(得分:2)

看起来你每个标题和副标题只能完全适合两行。如果我是你,我会用用于绘制它的颜料来测量文本的长度,看它是否小于(行的宽度)*(行数)。

例如,请考虑以下事项:

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

其中TITLE_LINE_WIDTH是文本的可用宽度(以像素为单位)(占填充/边距等),TITLE_NUM_ROWS是每个标题的行数。 同样,您可以检查副标题,看它是否符合自己的界限。