Android GridView的使用
2012-04-24 23:25
381 查看
Android的GridView控件用于把一系列的空间组织成一个二维的网格显示出来应用的比较多的就是组合图片显示下面我就详细讲一个例子
首先写一个类继承BaseAdapter
[Java]代码
print?
print?
首先写一个类继承BaseAdapter
[Java]代码
package com.yarin.android.Examples_04_19; |
02 |
03 | import android.content.Context; |
04 | import android.view.View; |
05 | import android.view.ViewGroup; |
06 | import android.widget.BaseAdapter; |
07 | import android.widget.GridView; |
08 | import android.widget.ImageView; |
09 |
10 | public class ImageAdapter extends BaseAdapter |
11 | { |
12 | // 定义Context |
13 | private Context mContext; |
14 | // 定义整型数组 即图片源 |
15 | private Integer[] mImageIds = |
16 | { |
17 | R.drawable.img1, |
18 | R.drawable.img2, |
19 | R.drawable.img3, |
20 | R.drawable.img4, |
21 | R.drawable.img5, |
22 | R.drawable.img6, |
23 | R.drawable.img7, |
24 | R.drawable.img8, |
25 | R.drawable.img1, |
26 | }; |
27 |
28 | public ImageAdapter(Context c) |
29 | { |
30 | mContext = c; |
31 | } |
32 |
33 | // 获取图片的个数 |
34 | public int getCount() |
35 | { |
36 | return mImageIds.length; |
37 | } |
38 |
39 | // 获取图片在库中的位置 |
40 | public Object getItem( int position) |
41 | { |
42 | return position; |
43 | } |
44 |
45 |
46 | // 获取图片ID |
47 | public long getItemId( int position) |
48 | { |
49 | return position; |
50 | } |
51 |
52 |
53 | public View getView( int position,View convertView,ViewGroup parent) |
54 | { |
55 | ImageView imageView; |
56 | if (convertView == null ) |
57 | { |
58 | // 给ImageView设置资源 |
59 | imageView = new ImageView(mContext); |
60 | // 设置布局 图片120×120显示 |
61 | imageView.setLayoutParams( new GridView.LayoutParams( 85 , 85 )); |
62 | // 设置显示比例类型 |
63 | imageView.setScaleType(ImageView.ScaleType.FIT_CENTER); |
64 | } |
65 | else |
66 | { |
67 | imageView =(ImageView)convertView; |
68 | } |
69 |
70 | imageView.setImageResource(mImageIds[position]); |
71 | return imageView; |
72 | } |
73 |
74 | } |
[代码] [Java]代码
view sourceprint?
01 | package com.yarin.android.Examples_04_19; |
02 |
03 | import android.app.Activity; |
04 | import android.os.Bundle; |
05 | import android.view.View; |
06 | import android.widget.AdapterView; |
07 | import android.widget.GridView; |
08 | import android.widget.Toast; |
09 | import android.widget.AdapterView.OnItemClickListener; |
10 |
11 | public class Activity01 extends Activity |
12 | { |
13 | /** Called when the activity is first created. */ |
14 | @Override |
15 | public void onCreate(Bundle savedInstanceState) |
16 | { |
17 | super .onCreate(savedInstanceState); |
18 | setContentView(R.layout.main); |
19 |
20 | //取得GridView对象 |
21 | GridView gridview = (GridView)findViewById(R.id.gridview); |
22 | //添加元素给gridview |
23 | gridview.setAdapter( new ImageAdapter( this )); |
24 |
25 | // 设置Gallery的背景 |
26 | gridview.setBackgroundResource(R.drawable.bg0); |
27 |
28 | //事件监听 |
29 | gridview.setOnItemClickListener( new OnItemClickListener(){ |
30 | public void onItemClick(AdapterView<?>parent,View v, int position, long id) |
31 | { |
32 | Toast.makeText(Activity01. this , "你选择了" + (position + 1 )+ " 号图片" ,Toast.LENGTH_SHORT).show(); |
33 | } |
34 | }); |
35 | } |
36 | } |
[代码] [XML]代码
view sourceprint?
01 | <? xml version = "1.0" encoding = "utf-8" ?> |
02 | < GridView xmlns:android = "http://schemas.android.com/apk/res/android" |
03 | android:id = "@+id/gridview" |
04 | android:layout_width = "fill_parent" |
05 | android:layout_height = "fill_parent" |
06 | android:numColumns = "auto_fit" |
07 | android:verticalSpacing = "10dp" |
08 | android:horizontalSpacing = "10dp" |
09 | android:columnWidth = "90dp" |
10 | android:stretchMode = "columnWidth" |
11 | android:gravity = "center" |
12 | /> |
相关文章推荐
- Android PullToRefresh (ListView GridView 下拉刷新) 使用详解
- android ListView,GridView 使用小结
- Android中使用GridView和ImageViewSwitcher实现电子相册简单功能实例
- Android 列表使用(ListView GridView Gallery图片计时滚动)
- Android:控件GridView的使用(SimpleAdapter)
- Android 控件GridView的使用
- Android PullToRefresh (ListView GridView 下拉刷新) 使用详解
- Android listview 嵌套 gridview (滑动控件的嵌套使用)
- Android入门2:从GridView控件使用到自定义Adapter
- Android中使用selector动态改变imageView或ImageButton的背景和在GridView中应用
- Android在Gridview中使用Checbox
- Android中GridView的使用
- Android PullToRefresh (ListView GridView 下拉刷新) 使用详解
- android GridView 的使用 实现多项选择
- Android中GridView(网格视图,比如九宫格)使用
- Android之UI学习篇八:使用GridView实现九宫格的菜单
- Android高手进阶教程(十六)之---Android中万能的BaseAdapter(Spinner,ListView,GridView)的使用!
- Android中GridView(网络视图)使用
- Android常用控件之GridView使用BaseAdapter
- android--UI--GridView的使用