博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android之Gridview图片列表
阅读量:4043 次
发布时间:2019-05-24

本文共 3077 字,大约阅读时间需要 10 分钟。

gridview是一项显示二维的viewgroup,可滚动的网格。网格项时自动插入的布局使用listadapter。
1.创建一个新的项目:gridview.

2,打开 res/layout/main.xml文件,插入一下代码:

 
 
   
 

做好以后就可以在屏幕上显示一个grid view

3.打开gridview.java首先要导入包:

package cn.gridview;   
import android.widget.GridView;  
import android.widget.Toast;  
import android.app.Activity;  
import android.os.Bundle;  
import android.widget.AdapterView.OnItemClickListener;  
import android.widget.AdapterView;  
import android.view.View;  
在onCreate添加方法:  
 public void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
        setContentView(R.layout.main);  
        GridView gridview=(GridView)findViewById(R.id.gridview);//找到main.xml中定义gridview 的id  
        gridview.setAdapter(new ImageAdapter(this));//调用ImageAdapter.java  
        gridview.setOnItemClickListener(new OnItemClickListener(){//监听事件  
         public void onItemClick(AdapterView
 parent, View view, int position, long id)   
         {  
          Toast.makeText(gridview.this, ""+position,Toast.LENGTH_SHORT).show();//显示信息;  
         }  
        });  
    }  
ImageAdapter.java  
package cn.gridview;  
import android.view.View;  
import android.view.ViewGroup;  
import android.widget.BaseAdapter;  
import android.content.Context;  
import android.widget.ImageView;  
import android.widget.GridView;  
public class ImageAdapter extends BaseAdapter {  
 private Context mContext;  
   
 public ImageAdapter(Context c)  
 {  
  mContext=c;  
 }  
 @Override  
 public int getCount() {  
  // TODO Auto-generated method stub  
  return mThumbIds.length;  
 }  
@Override  
 public Object getItem(int position) {  
  // TODO Auto-generated method stub  
  return null;  
 }  
@Override  
 public long getItemId(int position) {  
  // TODO Auto-generated method stub  
  return 0;  
 }  
 @Override  
 public View getView(int position, View convertView, ViewGroup parent) {  
  // TODO Auto-generated method stub  
    
  ImageView imageview;  
  if(convertView==null)  
  {  
   imageview=new ImageView(mContext);  
   imageview.setLayoutParams(new GridView.LayoutParams(85, 85));  
   imageview.setScaleType(ImageView.ScaleType.CENTER_CROP);  
   imageview.setPadding(8,8,8,8);  
 }  
  else  
  {  
   imageview=(ImageView) convertView;  
  }  
  imageview.setImageResource(mThumbIds[position]);  
  return imageview;  
  }  
private Integer[] mThumbIds={//显示的图片数组   
  R.drawable.sample_2,R.drawable.sample_3,  
  R.drawable.sample_4,R.drawable.sample_5,  
  R.drawable.sample_6,R.drawable.sample_7,  
  R.drawable.sample_0,R.drawable.sample_1,  
  R.drawable.sample_2,R.drawable.sample_3,  
  R.drawable.sample_4,R.drawable.sample_5,  
  R.drawable.sample_6,R.drawable.sample_7,  
  R.drawable.sample_0,R.drawable.sample_1,  
  R.drawable.sample_2,R.drawable.sample_3,  
  R.drawable.sample_4,R.drawable.sample_5,  
  R.drawable.sample_6,R.drawable.sample_7,  
 };  

转载地址:http://cugdi.baihongyu.com/

你可能感兴趣的文章
Variable property attributes or Modifiers in iOS
查看>>
NSNotificationCenter 用法总结
查看>>
C primer plus 基础总结(一)
查看>>
剑指offer算法题分析与整理(三)
查看>>
Ubuntu 13.10使用fcitx输入法
查看>>
pidgin-lwqq 安装
查看>>
mint/ubuntu安装搜狗输入法
查看>>
C++动态申请数组和参数传递问题
查看>>
opencv学习——在MFC中读取和显示图像
查看>>
Matlab与CUDA C的混合编程配置出现的问题及解决方案
查看>>
如何将PaperDownloader下载的文献存放到任意位置
查看>>
C/C++中关于动态生成一维数组和二维数组的学习
查看>>
JVM最简生存指南
查看>>
Java的对象驻留
查看>>
JVM并发机制探讨—内存模型、内存可见性和指令重排序
查看>>
如何构建高扩展性网站
查看>>
持续可用与CAP理论 – 一个系统开发者的观点
查看>>
nginx+tomcat+memcached (msm)实现 session同步复制
查看>>
c++字符数组和字符指针区别以及str***函数
查看>>
c++类的操作符重载注意事项
查看>>