Android开发—解决自定义GridView高度第一个item高度异常问题
问题描述:
在写之前,先把问题的图贴出来,问题如下图,GridView的第一个item的自定义高度显示不正常(再次加载之后又正常),不是预设的高度:
解决方法:
首先需要申明,这个GridView 的适配器用的是BaseAdapter,在定义适配器的getView方法中,主要注意代码中/***********/标记的地方,下面贴出我的getView方法:
publicViewgetView(intposition,ViewconvertView,ViewGroupparent){GirdHolderholder;if(convertView==null){holder=newGirdHolder();convertView=LayoutInflater.from(getApplication()).inflate(R.layout.gridview_item,null);//setitem'sheightGridView.LayoutParamsparam=newGridView.LayoutParams(android.view.ViewGroup.LayoutParams.MATCH_PARENT,(gvList.getHeight()-(1+level)*16)/level);convertView.setLayoutParams(param);holder.imgView=(ImageView)convertView.findViewById(R.id.p_w_picpath);convertView.setTag(holder);}else{holder=(GirdHolder)convertView.getTag();//fixtheproblemoffirstitem'sheightisnotnormal/******************一定要把设置高度的代码再写在这个位置******************************/convertView.setLayoutParams(newGridView.LayoutParams(android.view.ViewGroup.LayoutParams.MATCH_PARENT,(gvList.getHeight()-(1+level)*16)/level));/************************************************/}if(status[position]==0){holder.imgView.setImageResource(R.drawable.smile_yellow);}else{holder.imgView.setImageResource(R.drawable.smile_bule);}returnconvertView;}
再贴上解决后的效果图:
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。