横向listview( HorizontalListView) item平分屏幕的解决方案 可以一屏幕显示n个完整item

时间:2021-07-31 19:45:58

首先提的的就是getView方法,里面的convertView是我们自定义加载的布局,在inflate一个xml之后,我们需要getLayoutParams来获取参数信息,由于这个方法是获取的父控件的参数,所以我们需要给这个xml文件多套一层布局比如RelativeLayout,然后把这个RelativeLayout得宽高设置成wrapcontent,然后把params强转成android.widget.RelativeLayout.LayoutParams,随后我们就可以随意设置params的宽高等属性信息了,以达到平分当前屏幕宽度的需求,比如说,让当前屏幕显示3个item,那么就把params.width = 屏幕宽/3 ,这样就OK了!

由于我们项目中用到横向list,还要默认显示3个完整item,从网上找了好几天,最后终于找到间接的解决方案。首先感谢http://blog.csdn.net/liuhaomatou/article/details/22899925 这位大神的博客,是介绍getLayoutParams的相关信息,从中得到启发。没整明白的可以加我Q747160712

Demo下载 http://download.csdn.net/detail/lonvik/9792314