android初學---widget之網格GridView

1、佈局

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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="fill_parent"
        android:numColumns="3" >
    </GridView>

</RelativeLayout>

2、Activity

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.GridView;
import android.widget.ImageView;
import android.widget.ViewSwitcher.ViewFactory;

public class GridViewActivity extends Activity implements ViewFactory {

 private GridView gridView;

 private GridAdapter gridAdapter;

 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.gridviewlayout);
  gridView = (GridView) findViewById(R.id.gridview);
  gridAdapter = new GridAdapter(this);
  gridView.setAdapter(gridAdapter);
 }

 @Override
 public View makeView() {
  ImageView imageView = new ImageView(this);
  return imageView;
 }

}

3、Adapter

import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;

public class GridAdapter extends BaseAdapter {

 private GridViewActivity gridViewAcivity;

 public GridAdapter(GridViewActivity gridViewAcivity) {
  this.gridViewAcivity = gridViewAcivity;
 }

 @Override
 public int getCount() {
  return ConstData.imageId.length;
 }

 @Override
 public Object getItem(int i) {
  return ConstData.imageId[i];
 }

 @Override
 public long getItemId(int i) {
  return i;
 }

 @Override
 public View getView(int i, View view, ViewGroup viewgroup) {
  ImageView imageView = null;
  if (null == view) {
   imageView = new ImageView(gridViewAcivity);
   imageView.setAdjustViewBounds(true);
   imageView.setPadding(8, 8, 8, 8);
  } else {
   imageView = (ImageView) view;
  }

  imageView.setImageResource(ConstData.imageId[i]);
  return imageView;
 }

}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章