Android中GridView的实现实例
2024-09-28 11:26:24
实现效果:
activity文件代码:
package com.tmacsky;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.GridView;
import android.widget.ImageView;
public class MyGridViewActivity extends Activity {
//定义图片数组
private int[] mImages = new int[]{R.drawable.ha,R.drawable.hb,R.drawable.hc,R.drawable.hd,R.drawable.he,R.drawable.hf,R.drawable.hg,R.drawable.hh};
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.gridview);
GridView gView = (GridView)findViewById(R.id.gView);
//建立数据源,设置adapter
gView.setAdapter(new ImageAdapter());
}
class ImageAdapter extends BaseAdapter{
public int getCount() {
// TODO Auto-generated method stub
return mImages.length;
}
public Object getItem(int position) {
// TODO Auto-generated method stub
return mImages[position];
}
public long getItemId(int position) {
// TODO Auto-generated method stub
return mImages[position];
}
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
ImageView imageView = new ImageView(MyGridViewActivity.this);
imageView.setLayoutParams(new GridView.LayoutParams(85, 85));
imageView.setPadding(5, 5, 5, 5);
imageView.setImageResource(mImages[position]);
return imageView;
}
}
}
对应gridview.xml的代码:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<GridView
android:horizontalSpacing="2dp"
android:verticalSpacing="2dp"
android:columnWidth="100dp"
android:numColumns="auto_fit"
android:id="@+id/gView"
android:layout_width="wrap_content"
android:layout_height="match_parent"
/>
</LinearLayout>
更多详情参看官方帮助文档里的GridView源码:
最新文章
- 如果你想深刻理解ASP.NET Core请求处理管道,可以试着写一个自定义的Server
- strncpy函数使用
- 探索C#之虚拟桶分片
- android中无限循环滑动的gallery实例
- C#通过编程方式实现Ping
- UVA 11468【AC自动机+DP】
- asp.net基础概念总结
- HZAU 1199: Little Red Riding Hood 01背包
- jmeter基本组成原件介绍
- SpringCloud问题解决:spring-cloud-eureka启动出错Cannot execute request on any known server
- 【评分】BETA 版冲刺前准备
- github/gitee使用办法
- 整数的故事(4)——Karastuba算法
- AS 中 Plugin for Gradle 和 Gradle 之间的版本对应关系
- 批量telnet端口通不通
- progressBar显示百分比
- python requests post和get
- Python自学:第二章 删除空白
- win2016安装postgresql安装不了的问题
- pycharm pro版本激活
热门文章
- 一段实现页面上的图片延时加载的js
- 浅谈MySQL Replication(复制)基本原理
- hdu 5444 Elven Postman(根据先序遍历和中序遍历求后序遍历)2015 ACM/ICPC Asia Regional Changchun Online
- C# 类的多态、结构、接口、抽象、虚函数总结
- [Java]获取Window界面的标题栏的高度大小
- 一个强大的LogParser的UI工具--logparserlizard简介
- 为什么大型网站前端使用PHP后台逻辑用Java
- boost的link 和 runtime-link,搭配shared 和 static
- hive 面试题 转载
- kerboros安装