正常开放中会通过数据来设置UI的显示,就会经常考虑UI的尺寸问题,ListView是经常使用的一个控件,今天有个功能是将ListView显示到PopupWindow中,但是ListView的数据是不确定的,所以需要动态获取到listView的高度来设置PopupWindow的高度。
代码如下:
<pre name="code" class="java"> /**
* 动态获取到视图的高度:通过数据获取到对应的view,并测量出item的高度统计后加上线条的高度
* @param adapter:需要获取的视图的适配器
* @param listView:需要获取的视图控件
* @return int:视图的总高度
*/
private int getListheight(ApplymenuAdapter adapter, ListView listView) {
//对适配器的数据进行判空操作
if(adapter == null) {
return 0;
}
//设置ListView的底部高度
int totalHeight = 40;
//遍历适配器数据,获取到每一个item的高度并进行统计
for (int i = 0; i < adapter.getCount(); i++) {
View listItem = adapter.getView(i, null, listView);