GridView使用的技巧

来源:互联网 发布:淘宝v达人 编辑:程序博客网 时间:2024/06/06 01:30

今天用gridview遇到一个问题,看下图
<img src="http://img.blog.csdn.net/20160226093238343?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
这样算是做出来了,但是不是我想要,图片之间的宽度感觉好宽,我想要的是图片上下左右的宽度一样,弄了好久出来了,
其实GridView,很好使用,下面是他的一下属性    
    android:columnWidth 设置列的宽度      
   android:horizontalSpacing="5dp" 设置各元素见水平间距     
    android:verticalSpacing="5dp"  设置各元素见垂直巨鹿       
    android:numColumns="3"  设置列数        
   android:stretchMode="columnWidth" 设置拉伸模式,(这里拉伸的是本身,)       
    android:scrollbars="@null"/>  隐藏滚动条 或者android:scrollbars="none" 
   基本也就这么多属性,  用到时候适配器建议用BaseAdapter  感觉这个最好用,
 出现上面的原因,先贴下部分代码
                @Overridepublic View getView(int position, View convertView, ViewGroup parent) {ImageView imageView;if (convertView == null) { //convertView = LayoutInflater.from(context).inflate(R.layout.my_information_item,null);imageView = new ImageView(context);//设置ImageView 对象布局imageView.setLayoutParams(new GridView.LayoutParams(80,80));//设置边界对整齐imageView.setAdjustViewBounds(false);//设置刻度类型imageView.setScaleType(imageView.getScaleType().CENTER_CROP);//设置间距imageView.setPadding(5, 5, 5, 5);}else {imageView = (ImageView) convertView;}imageView.setImageResource(imgs[position]);return imageView;}}
图片是动态添加的,想改变图片的大小还是要在java代码中,  
imageView.setLayoutParams(new GridView.LayoutParams(80,80)); 这个就是关键,设置图片的长和宽都是80 ,而在xml中
有设置一行图片的具体个数
  <GridView        android:id="@+id/my_infor_picture"        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:horizontalSpacing="5dp"        android:verticalSpacing="5dp"        android:numColumns="3"        android:stretchMode="columnWidth"        android:scrollbars="@null"/> 
例如这个设置3张图片 这样的话,设置的<pre name="code" class="html">android:verticalSpacing="5dp" 就会无效,系统等分三份,
要改的话就在java代码中把宽度设置为变量,
imageView.setLayoutParams(new GridView.LayoutParams(LayoutParams.MATCH_PARENT,180));
这样的效果就会得到我们想要的。 
不知道自己说的是否详细,有不知道大家可以再问。做好的效果图如下
<img src="http://img.blog.csdn.net/20160226093530438?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />







0 0
原创粉丝点击