android的GridView控件案例
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
GridView控件案例1、实现效果
2、实现原理
本实例将实现对GridView控件的应用,实现原理有:
将9个图片以三行三例的方式排列在窗口中,起到一个导向的作用
3、实现步骤
第一步:创建项目
说明:这里创建一个android项目,名称改了GridViewTest
包名设置为:
第二步:设置布局文档(main.xml)
具体代码如下:
android:layout_width="fill_parent"android:layout_height="fill_parent" android:orientation="vertical"> android:layout_width="fill_parent" android:layout_height="fill_parent" android:id="@+id/imageView" android:src="@drawable/mainback" android:scaleType="fitXY"/> android:id="@+id/gridview" android:verticalSpacing="10dp" android:layout_marginBottom="20dip" android:layout_width="fill_parent" android:layout_height="fill_parent" android:stretchMode="columnWidth" android:gravity="center_horizontal" android:layout_marginTop="90dip" android:numColumns="3"/>
第三步:创建一个自定义的GridView数据适配器: GirdViewdapter 说明:如下代码,具体功能参见代码中的注释
public class GirdViewdapter extends BaseAdapter {
//定义Context
private Context mContext;
//定义整型数组即图片源 (这些图片来至于资源文件中)
private int[] mImageIds =
{
R.drawable.maingriditem1,
R.drawable.maingriditem2,
R.drawable.maingriditem3,
R.drawable.maingriditem4,
R.drawable.maingriditem5,
R.drawable.maingriditem6,
R.drawable.maingriditem7,
R.drawable.maingriditem8,
R.drawable.maingriditem9,
};
// 构造函数(用于接收一个Activity实体)
public GirdViewdapter(Context c){
mContext = c;
}
//获取图片总个数
public int getCount() {
return mImageIds.length;
}
//获取图片在库中的位置
public Object getItem(int position) {
return position;
}
//获取图片ID
public long getItemId(int position) {
return position;
}
public View getView(int position, View convertView, ViewGroup parent) { ImageView imageView = null; // 创建一个将返回给Activity窗口的图片对象
if (convertView == null ) {
//给ImageView设置资源
imageView = new ImageView(mContext);
//设置布局图片168*168显示
imageView.setLayoutParams(new youtParams(168,168));
//设置显示比例类型
imageView.setScaleType(ImageView.ScaleType.FIT_CENTER);
}
else {
imageView = (ImageView) convertView;
}
imageView.setImageResource(mImageIds[position]);
return imageView;
}
}
第四步:设置GridViewTestActivity代码
(1)设置onCreate方法的内容
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(yout.main);
//获取GridView对象
GridView gridview = (GridView) findViewById(R.id.gridview);