GridView 常用的属性

XML 属性 相关的Java方法 说明
android:columnWidth setColumnWidth(int) 设置列的宽度
android:gravity setGravity(int) 设置对齐方式
android:horizontalSpacing setHorizontalSpacing(int) 设置各元素之间的水平间距
android:numColumns setNumColumns(int) 设置列数
android:stretchMode setStretchMode(int) 设置拉伸模式
android:verticalSpacing setVerticalSpacing(int) 设置各元素之间的垂直间距

页面布局文件:

<?xml version="1.0" encoding="utf-8"?>        

主程序代码:

package com.toby.personal.testlistview;import android.app.Activity;import android.os.Bundle;import android.view.View;import android.widget.AdapterView;import android.widget.GridView;import android.widget.ImageView;import android.widget.SimpleAdapter;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;public class MainActivity extends Activity {    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        final int[] imageIds = new int[]{                R.drawable.img01, R.drawable.img02, R.drawable.img03, R.drawable.img04,                R.drawable.img05, R.drawable.img06, R.drawable.img07, R.drawable.img08,                R.drawable.img09, R.drawable.img10, R.drawable.img11, R.drawable.img12        };        List> listItems = new ArrayList<>();        for (int i = 0; i < imageIds.length; ++i) {            Map listItem = new HashMap<>();            listItem.put("image", imageIds[i]);            listItems.add(listItem);        }        GridView gridView = (GridView) findViewById(R.id.gridView);        SimpleAdapter simpleAdapter = new SimpleAdapter(this, listItems, R.layout.cell,                new String[] { "image" }, new int[] {R.id.cellImage});        gridView.setAdapter(simpleAdapter);        final ImageView imageView = (ImageView) findViewById(R.id.imageView);        gridView.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {            @Override            public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {                imageView.setImageResource(imageIds[i]);            }            @Override            public void onNothingSelected(AdapterView<?> adapterView) {            }        });        gridView.setOnItemClickListener(new AdapterView.OnItemClickListener() {            @Override            public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {                imageView.setImageResource(imageIds[i]);            }        });        imageView.setImageResource(imageIds[0]);    }}

主程序中用到的cell布局文件和cellImage对象,在cell.xml文件中:

<?xml version="1.0" encoding="utf-8"?>

程序运行效果:


Android GridView 使用示例_第1张图片 GridView 使用示例

参考文献:《疯狂Android讲义(第2版)》

更多相关文章

  1. Android 下载文件及写入SD卡
  2. 高焕堂android中文书全,电子文件for version 1.0
  3. Android:关于声明文件中android:process属性说明
  4. android编译时添加库第三方库文件
  5. AndroidManifest.xml文件详解
  6. ANDROID的MANIFEST.XML文件字段解析
  7. Android Framework中添加AIDL文件编译

随机推荐

  1. Android实现实时视频通话或监控方案
  2. Android进程间通信(二):通过AIDL介绍Binder
  3. Master OpenCV with Pratical Computer V
  4. android基于NDK的环境搭建――上
  5. android 自动弹出软件盘和不弹出设置
  6. Eclipse编译带so库或jar包的android应用
  7. [置顶] android socket 聊天实现
  8. Android列表嵌入视频播放
  9. android GridView 长按事件不管用
  10. Android(安卓)USB Host与HID通讯 (一)