GridView使用示例(一)

main.xml如下:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >

    <GridView
        android:id="@+id/gridView"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:stretchMode="columnWidth"
        android:verticalSpacing="5dip"
        android:horizontalSpacing="5dip"
        android:numColumns="3"
        />

</RelativeLayout>

gridview_item.xml如下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="vertical" >
    <ImageView
        android:id="@+id/imageView"
        android:layout_height="100dip"
        android:layout_width="150dip"
        android:scaleType="fitXY"
       />
    <TextView
        android:id="@+id/textView"
        android:layout_height="wrap_content"
        android:layout_width="wrap_content"
        android:layout_gravity="center_horizontal"
      />

</LinearLayout>

 

MainActivity如下:

import java.util.ArrayList;
import java.util.HashMap;
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;
import android.widget.TextView;
import android.widget.Toast;
import android.app.Activity;
import android.content.res.TypedArray;
/**
 *Demo描述:利用GridView展示图片
 *注意:
 *图片的id是存放在array.xml中的,注意TypedArray的使用
 */
public class MainActivity extends Activity {
    private GridView mGridView;
    TypedArray photoIDArray=null;
    private String [] photoNameArray=null;
    private ArrayList<HashMap<String, Object>> gridViewItemsArrayList;
    private HashMap<String, Object> everyItemHashMap;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		init();
	}
    private void init(){
    	mGridView=(GridView) findViewById(R.id.gridView);
    	photoIDArray=getResources().obtainTypedArray(R.array.photoIDArray);
    	photoNameArray=getResources().getStringArray(R.array.photoNameArray);
    	gridViewItemsArrayList=new ArrayList<HashMap<String,Object>>();
    	for (int i = 0; i < photoNameArray.length; i++) {
			everyItemHashMap=new HashMap<String, Object>();
			everyItemHashMap.put("photoID",  (int)photoIDArray.getResourceId(i,0));
			everyItemHashMap.put("photoName", photoNameArray[i]);
			gridViewItemsArrayList.add(everyItemHashMap);
		}
    	SimpleAdapter simpleAdapter=new SimpleAdapter(MainActivity.this, gridViewItemsArrayList,
    	R.layout.gridview_item, new String []{"photoID","photoName"}, new int[]{R.id.imageView,R.id.textView});
        mGridView.setAdapter(simpleAdapter);
        mGridView.setOnItemClickListener(new ItemClickListenerImpl());
    }
    private class ItemClickListenerImpl implements OnItemClickListener{
		@Override
		public void onItemClick(AdapterView<?> parent, View view, int position,long id) {
			TextView textView=(TextView) view.findViewById(R.id.textView);
			String name=textView.getText().toString();
			Toast.makeText(MainActivity.this, position+" "+name, Toast.LENGTH_SHORT).show();
		}

    }
}

 

时间: 2024-07-31 06:09:13

GridView使用示例(一)的相关文章

GridView使用示例(三)

TestGridViewActivity如下: package cn.com.baidu; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.widget.Ad

GridView使用示例(二)

mainActivity如下: package cn.c; import java.util.ArrayList; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.AdapterView; import android.widget.AdapterView.

Android开发中GridView用法示例

本文实例讲述了Android开发中GridView用法.分享给大家供大家参考,具体如下: Android的GridView控件用于把一系列的空间组织成一个二维的网格显示出来,应用的比较多的就是组合图片显示.下面我就详细讲一个例子. 首先写一个类继承BaseAdapter 1. Java代码 package com.yarin.android.Examples_04_19; import android.content.Context; import android.view.View; impo

Android Recyclerview实现水平分页GridView效果示例

昨天UI妹子给了给需求,展示水平分页效果,而且第二页要默认显示一部分,提示用户水平可以滑动,先上效果图: 很明显横向滑动的分页,第一反应就是使用ViewPager,毕竟只要通过自定义ViewPager,实现这个效果还是很容易,但是实际中问题时,当前模块是Recyclerview中某一个Holder,为了性能,肯定尽量使用Recyclerview去复用View,而且ViewPager并不能复用,所以考虑之后,还是要用Recyclerview去实现. 解决思路 既然打算用Recyclerview实现

《Android开发基础教程》——6.3节GridView界面组件——表格展示

6.3 GridView界面组件--表格展示 Android开发基础教程 GridView界面组件是在表格中放置图片进行展示,在设置时的重点是规定每一行的字段数,图片展示时会根据列自动折行显示. 6.3.1 GridView语法示例与常用的属性 例如:我们要创建一个名称为"GridView01"的GridView组件,每行有3张图片,Gallery组件和边界的距离是20dp,图片的水平和垂直间隔是6dp,宽度填满整个屏幕,高度根据图片高度调整. <GridView android

PHP开发框架Yii Framework教程(32) Zii组件-GridView示例

CGridView 以表格的形式显示数据,CGridView 也支持分页和排序,CGridView最基本的用法和ListView类型,也是通过设置  data provider,通常是CActiveDataProvider. 修改上个例子Yii Framework 开发教程(31) Zii组件-DetailView 示例,把ListView该为GridView: <?php $this->widget('zii.widgets.grid.CGridView', array( 'dataProv

gridview自动排序示例分享

 GridView自带了数据排序功能.在设计视图下,只能对GridView的排序数据列和排序方向进行静态设置.在后台程序中,则需要用Attributes方式对GridView的这两个属性进行动态设置 示例如下:前台    代码如下: <%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %

Android开发之ListView、GridView 详解及示例代码_Android

    ListView与GridView是Android开发中的常用控件,它们和Adapter配合使用能够实现很多界面效果.下面分别以实例说明ListView.GridView的用法.        1.ListView的Android开发实例        ListView 是android开发中最常用的控件之一,一般构成列表包括三个元素,ListView:用来展示列表的视图.Adapter:数据与视图连接的桥梁.Data:具体的数据包括字符串 .图片或者控件.        适配器一般有以

Android应用开发中使用GridView网格布局的代码示例_Android

基本布局演示1. 定义包含GridView 的 main.xmk <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fil