zoukankan      html  css  js  c++  java
  • Android中GridView的实现实例

    实现效果:


    activity文件代码:

    package com.tmacsky;
    import android.app.Activity;
    import android.os.Bundle;
    import android.view.View;
    import android.view.ViewGroup;
    import android.widget.BaseAdapter;
    import android.widget.GridView;
    import android.widget.ImageView;
    public class MyGridViewActivity extends Activity {
    	//定义图片数组
    	private int[] mImages = new int[]{R.drawable.ha,R.drawable.hb,R.drawable.hc,R.drawable.hd,R.drawable.he,R.drawable.hf,R.drawable.hg,R.drawable.hh};
    	@Override
    	protected void onCreate(Bundle savedInstanceState) {
    		// TODO Auto-generated method stub
    		super.onCreate(savedInstanceState);
    		setContentView(R.layout.gridview);
    		GridView gView = (GridView)findViewById(R.id.gView);
    		//建立数据源,设置adapter
    		gView.setAdapter(new ImageAdapter());
    	}
    	class ImageAdapter extends BaseAdapter{
    		public int getCount() {
    			// TODO Auto-generated method stub
    			return mImages.length;
    		}
    		public Object getItem(int position) {
    			// TODO Auto-generated method stub
    			return mImages[position];
    		}
    		public long getItemId(int position) {
    			// TODO Auto-generated method stub
    			return mImages[position];
    		}
    		public View getView(int position, View convertView, ViewGroup parent) {
    			// TODO Auto-generated method stub
    			ImageView imageView = new ImageView(MyGridViewActivity.this);
    			imageView.setLayoutParams(new GridView.LayoutParams(85, 85));
    			imageView.setPadding(5, 5, 5, 5);
    			imageView.setImageResource(mImages[position]);
    			return imageView;
    		}
    	}
    }


    对应gridview.xml的代码:

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >
        <GridView 
            android:horizontalSpacing="2dp"
            android:verticalSpacing="2dp"
            android:columnWidth="100dp"
            android:numColumns="auto_fit"
            android:id="@+id/gView"
            android:layout_width="wrap_content"
    		android:layout_height="match_parent"
            />
    </LinearLayout>


    更多详情参看官方帮助文档里的GridView源码:


  • 相关阅读:
    c# 调用C++动态库 问题
    Web应用简易框架。
    【转】SVN历史版本删除(为SVN库瘦身)
    程序员7武器序
    小系统单据自动生成存储过程
    【转】数据库和数据仓库的区别
    jQuery之extend 函数
    .NET单元测试断言(Assert)
    c#类型转换操作符:as和is
    oracle 表数据合并
  • 原文地址:https://www.cnblogs.com/snake-hand/p/3188452.html
Copyright © 2011-2022 走看看