-Hãy tạo một Android Project tên: Vidu_Gridview_DisplayImage và xem cấu trúc của chương trình:
-Layout sẽ có 2 cái: activity_main.xml là của màn hình chính dùng để hiển thị danh sách hình ảnh. solo_picture.xml là dùng để hiển thị từng hình riêng lẻ.
- Tạo thêm thư mục drawble và kéo thả một số hình ảnh vào.
- Phần class có 2 class: MainActivity và MyImageAdapter kế thừa từ BaseAdapter.
- Bây giờ ta đi vào chi tiết của từng cái:
- activity_main.xml:
-solo_picture.xml:
+ class này sẽ kế thừa từ BaseAdapter, và dùng để hiển thị từng hình ảnh riêng lẻ:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
| package tranduythanh.com; import android.content.Context; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.GridView; import android.widget.ImageView; /** * Class dùng để hiển thị từng hình ảnh riêng lẻ * @author drthanh * */ public class MyImageAdapter extends BaseAdapter { private Context mContext; private Integer []mThumbIds; public MyImageAdapter(Context c){ mContext=c; } public MyImageAdapter(Context c,Integer []arrIds){ mContext=c; mThumbIds=arrIds; } public int getCount() { return mThumbIds.length; } public Object getItem( int arg0) { return null ; } public long getItemId( int arg0) { return 0 ; } /** * Cần override lại hàm này để hiển thị hình ảnh */ public View getView( int arg0, View convertView, ViewGroup arg2) { ImageView imgView; if (convertView== null ){ imgView= new ImageView(mContext); //can chỉnh lại hình cho đẹp imgView.setLayoutParams( new GridView.LayoutParams( 85 , 85 )); imgView.setScaleType(ImageView.ScaleType.CENTER_CROP); imgView.setPadding( 8 , 8 , 8 , 8 ); } else { imgView=(ImageView) convertView; } //lấy đúng vị trí hình ảnh được chọn //gán lại ImageResource imgView.setImageResource(mThumbIds[arg0]); return imgView; } }
|
0 nhận xét:
Đăng nhận xét