我有ListView
并附有适配器。背后的数据是几篇文章。这些文章有标题和副标题,两者的长度各不相同。
有时,任何一个文本都很长,TextView
不适合具有固定高度的适配器创建的视图。
是否有可能找出TextViews
在视图中是否完全可见?
我知道我必须等待绘制布局,才能使用getViewTreeObserver().addOnGlobalLayoutListener(...)
答案 0 :(得分:2)
看起来你每个标题和副标题只能完全适合两行。如果我是你,我会用用于绘制它的颜料来测量文本的长度,看它是否小于(行的宽度)*(行数)。
例如,请考虑以下事项:
boolean doesTitleFitBounds = titleTextView.getPaint().measureText(titleText) < (TITLE_LINE_WIDTH * TITLE_NUM_ROWS);
其中TITLE_LINE_WIDTH是文本的可用宽度(以像素为单位)(占填充/边距等),TITLE_NUM_ROWS是每个标题的行数。 同样,您可以检查副标题,看它是否符合自己的界限。