下面介绍GridView,先看看效果

Android GridView 例子

1、显示界面

package com.grid.test;import java.util.ArrayList;import java.util.List;import android.app.Activity;import android.os.Bundle;import android.widget.GridView;public class GridTest extends Activity {private GridView gridview ;private List<GridInfo> list;private GridAdapter adapter;    /** Called when the activity is first created. */    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.gridlayout);        gridview = (GridView) findViewById(R.id.gridview);         list = new ArrayList<GridInfo>();        list.add(new GridInfo("name1"));        list.add(new GridInfo("name2"));        list.add(new GridInfo("name3"));        list.add(new GridInfo("name4"));        list.add(new GridInfo("name5"));        list.add(new GridInfo("name6"));        list.add(new GridInfo("name6"));        list.add(new GridInfo("name7"));        list.add(new GridInfo("name8"));        list.add(new GridInfo("name9"));        list.add(new GridInfo("name10"));        adapter = new GridAdapter(this);        adapter.setList(list);        gridview.setAdapter(adapter);    }}

2、组件信息

package com.grid.test;/** * Copyright (C) 2010,Under the supervision of China Telecom Corporation * Limited Guangdong Research Institute * The New Vphone Project * @Author fonter.yang * @Create date:2010-10-11 *  */public class GridInfo {private String name;public GridInfo(String name) {super();this.name = name;}public String getName() {return name;}public void setName(String name) {this.name = name;}}

3、Adapter 实现

package com.grid.test;import java.util.List;import android.content.Context;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widget.BaseAdapter;import android.widget.ImageView;import android.widget.TextView;/** * Copyright (C) 2010,Under the supervision of China Telecom Corporation Limited * Guangdong Research Institute The New Vphone Project *  * @Author fonter.yang * @Create date:2010-10-11 *  */public class GridAdapter extends BaseAdapter {private class GridHolder {ImageView appImage;TextView appName;}private Context context;private List<GridInfo> list;private LayoutInflater mInflater;public GridAdapter(Context c) {super();this.context = c;}public void setList(List<GridInfo> list) {this.list = list;mInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);}public int getCount() {// TODO Auto-generated method stubreturn list.size();}@Overridepublic Object getItem(int index) {return list.get(index);}@Overridepublic long getItemId(int index) {return index;}@Overridepublic View getView(int index, View convertView, ViewGroup parent) {GridHolder holder;if (convertView == null) {   convertView = mInflater.inflate(R.layout.grid_item, null);   holder = new GridHolder();holder.appImage = (ImageView)convertView.findViewById(R.id.itemImage);holder.appName = (TextView)convertView.findViewById(R.id.itemText);convertView.setTag(holder);   }else{ holder = (GridHolder) convertView.getTag();   }GridInfo info = list.get(index);if (info != null) {   holder.appName.setText(info.getName());}return convertView;}}

4、单个组件的XML

<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_height="wrap_content" android:paddingBottom="4dip"android:layout_width="fill_parent"><ImageView android:layout_height="wrap_content" android:id="@+id/itemImage"android:layout_width="wrap_content" android:layout_centerHorizontal="true" android:src="@drawable/icon"></ImageView><TextView android:layout_width="wrap_content"android:layout_below="@+id/itemImage" android:layout_height="wrap_content"android:text="TextView01" android:layout_centerHorizontal="true"android:id="@+id/itemText"></TextView></RelativeLayout> 

5、显示界面的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" /> 

6、源码下载

更多相关文章

  1. Android简单UI界面的XML实现
  2. Android泡泡聊天界面的源码实现
  3. android 界面 滑入 效果
  4. Android 系统自带的发送短信的界面源码
  5. android延迟进入主界面和点击按钮进入主界面代码
  6. Android的用户界面
  7. Android开发实践 界面编程(中)
  8. Android架构组件WorkManager详解

随机推荐

  1. Linux占用内存排查
  2. 一文多图带你看看如何用「对撞指针」思想
  3. 你真的知道Python的字符串怎么用吗?
  4. 学习Python,怎能不懂点PEP呢?
  5. 最新发布!webpack 4.0.0-alpha.0 特性
  6. 宏观视角看递归
  7. HTML 5.2中有些什么新变化?
  8. 从简单到复杂,一文带你搞懂滑动窗口在数组
  9. Ansible 之 ansible-playbook基础入门例
  10. Python是否支持复制字符串呢?