如果是这样子的话就看源码吧:
gridview.xml
- <?xml version="1.0" encoding="utf-8"?>
- <GridView xmlns:android="http://schemas.android.com/apk/res/android"
- android:id="@+id/gridview"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- android:numColumns="auto_fit"
- android:verticalSpacing="10dp"
- android:horizontalSpacing="10dp"
- android:columnWidth="90dp"
- android:stretchMode="columnWidth"
- android:gravity="center"
- />
item.xml
- <?xml version="1.0" encoding="utf-8"?>
- <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_height="wrap_content"
- android:layout_width="fill_parent"
- android:paddingBottom="4dip"
- >
- <ImageView
- android:id="@+id/ItemImage"
- android:layout_height="wrap_content"
- android:layout_width="wrap_content"
- android:layout_centerHorizontal="true"
- />
- <TextView
- android:id="@+id/ItemText"
- android:layout_width="wrap_content"
- android:layout_below="@+id/ItemImage"
- android:layout_height="wrap_content"
- android:layout_centerHorizontal="true"
- android:text="TextView01"
- />
- </RelativeLayout>
activity
- package com.test;
- import java.util.ArrayList;
- import java.util.HashMap;
- import android.app.Activity;
- import android.os.Bundle;
- import android.view.View;
- import android.widget.AdapterView;
- import android.widget.AdapterView.OnItemClickListener;
- import android.widget.GridView;
- import android.widget.SimpleAdapter;
- public class TestGridView extends Activity {
- private GridView gridview;
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.gridview);
- gridview = (GridView) findViewById(R.id.gridview);
- // 生成动态数组,并且转入数据
- ArrayList<HashMap<String, Object>> lstImageItem = new ArrayList<HashMap<String, Object>>();
- for (int i = 0; i < 10; i++) {
- HashMap<String, Object> map = new HashMap<String, Object>();
- map.put("ItemImage", R.drawable.icon);// 添加图像资源的ID
- map.put("ItemText", "NO." + String.valueOf(i));// 按序号做ItemText
- lstImageItem.add(map);
- }
- // 生成适配器的ImageItem <====> 动态数组的元素,两者一一对应
- SimpleAdapter saImageItems = new SimpleAdapter(this, // 没什么解释
- lstImageItem,// 数据来源
- R.layout.item,// night_item的XML实现
- // 动态数组与ImageItem对应的子项
- new String[] { "ItemImage", "ItemText" },
- // ImageItem的XML文件里面的一个ImageView,两个TextView ID
- new int[] { R.id.ItemImage, R.id.ItemText });
- // 添加并且显示
- gridview.setAdapter(saImageItems);
- // 添加消息处理
- gridview.setOnItemClickListener(new ItemClickListener());
- }
- // 当AdapterView被单击(触摸屏或者键盘),则返回的Item单击事件
- class ItemClickListener implements OnItemClickListener {
- public void onItemClick(AdapterView<?> arg0,// The AdapterView where the click happened
- View arg1,// The view within the AdapterView that was clicked
- int arg2,// The position of the view in the adapter
- long arg3// The row id of the item that was clicked
- ) {
- // 在本例中arg2=arg3
- @SuppressWarnings("unchecked")
- HashMap<String, Object> item = (HashMap<String, Object>) arg0.getItemAtPosition(arg2);
- // 显示所选Item的ItemText
- setTitle((String) item.get("ItemText"));
- }
- }
- }
相关推荐
Android GridView使用例子
android Gridview分页实现的一个小例子
用gridview写的一个小例子 有需要的可以参考一下
Android GridView 点击缩放图像
android gridview分页和滑动效
GridView的点击事件 GridView的点击事件 GridView的点击事件
android gridview多选删除工程,支持同时选定多个item然后删除
Android GridView完美横向滑动 ,并且可限制Gridview显示行数!
Android GridView分页显示
android gridview adapter 实例 每个getview显示不同的数据
Android GridView分组显示、带dock标题,带下拉刷新
android GridView 源代码 根据以下博客制作 http://blog.csdn.net/hellogv/article/details/4567095
android gridview 上图下字
Android下GridView的使用,详情参见博客:http://www.cnblogs.com/plokmju/p/android_GridView.html
一个非常好的 android gridview 异步加载图片的例子,需要17以上的api
Android 单行水平滑动效果,用HorizontalScrollView+GridView 来实现的,点击选中项后,退出再次进入应用,直接跳转到改选中项。
gridview 和listview是android最为常见的两个布局控件。这里是android gridview 简单的示例
该资料讲解了Android GridView设计的相关技巧,包括Gridview空数据处理、单排显示gridview并从解析JSON读取数据等重要技巧
android GridView分组 convertview可重用 可用于 图片相册 日期分组 内存消耗低