我整个上午都在安卓上纠结这个问题。我有一个列表视图,我需要计算它的高度。
我正在使用以下代码:
int totalHeight = 0;
for (int size = 0; size < myListAdapter.getCount(); size++) {
View listItem = myListAdapter.getView(size, null, myListView);
listItem.measure(MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED), MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED));
totalHeight += listItem.getMeasuredHeight();
}
不过,我在这里发现,列表项的某个布局的返回值小于实际布局的返回值(对于其他布局来说,返回值是准确的),最终使用它来重置列表的高度会删除列表的内容。我已经看了很多关于这个的线索-其中一个提供了一个解决方案,使布局中所有对象的高度“wrap_content”,这对我来说不起作用。
我找不到任何有用的东西。有人能帮忙吗?
真诚地,
- Lior
最佳答案
经过多次搜索,我找到了这条线索:
How to force height of listView to be size so that every row is visible?
给了我解决办法…有趣的是,我花了很长时间才找到它,因为它比我之前在这个问题上打过的几十页要准确得多。
希望这将有助于传播信息:)
利奥尔