android用户界面-组件Widget-网格视图GridView

GridView按照行列的方式来显示内容。一般适合显示图标。图片等内容,主要用于设置Adapter。

通过基础类BaseAdapter类,重写getView()方法来设置图片显示格式。

 

/Chapter04_UI_GridView01/src/com/amaker/test/MainActivity.java

代码
package com.amaker.test;

import android.app.Activity;
import android.content.Context;
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 MainActivity extends Activity {
private GridView gv;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
gv
= (GridView)findViewById(R.id.GridView01);
gv.setNumColumns(
4);
// gv.setNumColumns(3);
// String[] strs = {"a","a1","a2","b","b1","b2","c","c1","c2"};
// ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_gallery_item,strs);
gv.setAdapter(new MyAdapter(this));

}

class MyAdapter extends BaseAdapter{

private Integer[] imgs = {
R.drawable.gallery_photo_1,
R.drawable.gallery_photo_2,
R.drawable.gallery_photo_3,
R.drawable.gallery_photo_4,
R.drawable.gallery_photo_5,
R.drawable.gallery_photo_6,
R.drawable.gallery_photo_7,
R.drawable.gallery_photo_8,

R.drawable.gallery_photo_1,
R.drawable.gallery_photo_2,
R.drawable.gallery_photo_3,
R.drawable.gallery_photo_4,
R.drawable.gallery_photo_5,
R.drawable.gallery_photo_6,
R.drawable.gallery_photo_7,
R.drawable.gallery_photo_8
};
Context context;
MyAdapter(Context context){
this.context = context;
}
public int getCount() {
return imgs.length;
}

public Object getItem(int item) {
return item;
}

public long getItemId(int id) {
return id;
}

public View getView(int position, View convertView, ViewGroup parent) {
ImageView imageView;
if (convertView == null) {
imageView
= new ImageView(context);
imageView.setLayoutParams(
new GridView.LayoutParams(45, 45));
imageView.setAdjustViewBounds(
false);
imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
imageView.setPadding(
8, 8, 8, 8);
}
else {
imageView
= (ImageView) convertView;
}
imageView.setImageResource(imgs[position]);
return imageView;
}
}
}

 

posted on 2011-01-19 00:06  linzheng  阅读(4720)  评论(0编辑  收藏  举报

导航