这是我第一次写博客,话不多说,我把我开发的整个过程记录下来,在文章的末尾再附上图片和源代码。

第一步:新建项目

咳咳,这个就不多说了,我这里用的是API级别是google APIs:14

第二部:视图层开发

我们这里直接修改main.xml文件,里面主要放上一个GridView控件,代码如下:

main.xml:

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="fill_parent"    android:layout_height="fill_parent"    android:orientation="vertical" >    <GridView        android:id="@+id/gridView"        android:layout_width="fill_parent"        android:layout_height="wrap_content"        android:numColumns="4"        android:gravity="center" /></LinearLayout>

其中android:numColumns表示一行显示多少列,也可填写“auto_fit”,表示自动适应。


然后我们新建一个item.xml用来表示gridView中,每一个项对应的视图,这里我们放一个图片和在图片下面放上文字,代码如下:

item.xml:

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="fill_parent"    android:layout_height="fill_parent"    android:orientation="vertical" >    <ImageView        android:id="@+id/imageView"        android:layout_width="wrap_content"        android:layout_height="wrap_content" />    <TextView        android:id="@+id/imageText"        android:layout_width="wrap_content"        android:layout_height="wrap_content" /></LinearLayout>

这里需要为ImageView和TextView设置ID,在后面会用到


第三步:activity开发

废话就不多说了,直接贴代码,我把代码注释都写得详细一些

GridViewActivity.java

package org.example.gridview;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import android.app.Activity;import android.os.Bundle;import android.view.View;import android.widget.AdapterView;import android.widget.GridView;import android.widget.ListAdapter;import android.widget.SimpleAdapter;import android.widget.Toast;public class GridViewActivity extends Activity {    // gridView控件    private GridView gridView;    // 假设显示8个item,这对应着8个item的显示名称    private String[] itemTexts = new String[] { "搜索", "文件管理", "下载管理", "全屏", "网址", "加入书签", "分享页面", "关闭" };    // 这对应着8个item的图片,这里我偷懒了,统一用了系统自带的图片    private int[] itemImages = new int[] { R.drawable.ic_launcher, R.drawable.ic_launcher, R.drawable.ic_launcher,            R.drawable.ic_launcher, R.drawable.ic_launcher, R.drawable.ic_launcher, R.drawable.ic_launcher,            R.drawable.ic_launcher };    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);        // 初始化参数        gridView = (GridView) findViewById(R.id.gridView);        // 设置数据匹配器        gridView.setAdapter(getAdapter());        // 只是显示是没用用的,这里我们在添加单击item时的监听事件        gridView.setOnItemClickListener(new AdapterView.OnItemClickListener() {            @Override            public void onItemClick(AdapterView<?> arg0, View arg1, int index, long arg3) {                Toast.makeText(GridViewActivity.this, index + "", 2).show();            }        });    }    /**     * DOC 获取数据匹配器     */    private ListAdapter getAdapter() {        // 该list用来存放每一个item对应的文字和图片        List<HashMap<String, Object>> list = new ArrayList<HashMap<String, Object>>();        for (int i = 0; i < itemTexts.length; i++) {            HashMap<String, Object> map = new HashMap<String, Object>();            map.put("itemText", itemTexts[i]);            map.put("itemImage", itemImages[i]);            list.add(map);        }        // 该构造函数,这里说明一下        // new SimpleAdapter(Context, 上面的list,每一个项对应的itemView,itemView里显示的所有信息(要和list里的map里的名称一样) ,        // itemView里控件id);        SimpleAdapter simpleAdapter = new SimpleAdapter(this, list, R.layout.item, new String[] { "itemText", "itemImage" },                new int[] { R.id.imageText, R.id.imageView });        return simpleAdapter;    }}




最后,贴两张效果图,第一张是gridview显示图,第二张是点击某个item后Toast的提示:


附上源代码:

呃,为什么不能上传压缩包?大家到资源里去下载好了,不要分

http://download.csdn.net/detail/a107494639/4116285

更多相关文章

  1. android样式
  2. 【工利其器】必会工具之(四)Refactor篇——Android(安卓)Studio在
  3. 最简单的ViewFlipper实现图片跟随手势滑动
  4. Android之Intent传递数据的方式
  5. Android点击Button切换多个图片显示
  6. android 解决listview.notifyDataSetChanged刷新时Imageloader加
  7. Android性能优化之一:ViewStub
  8. Android(安卓)如何远端调试framework和APK?
  9. Android(安卓)布局 Layout_weight 详解

随机推荐

  1. android 实现由下至上弹出并位于屏幕底部
  2. Android(安卓)GPS状态改变与监听
  3. android 设置静态wifi地址
  4. Android(安卓)软键盘小知识点
  5. android短信发送器源代码
  6. android 客户端 smtp 协议发送数据
  7. Working with Images in Google's Androi
  8. android FlexboxLayout可伸缩布局
  9. Android(安卓)studio实现按钮的点击事件
  10. 『ANDROID』Android中的onWindowFocusCha