Bài giảng Lập trình Android - Bài 3: ListView. Tạo Custom Layout cho ListView

Trường ĐH Khoa Học Tự Nhiên Tp. Hồ Chí Minh  
TRUNG TÂM TIN HỌC  
Lập trình Android  
Bài 3: ListView. Tạo Custom Layout cho ListView  
Ngành Mạng & Thiết bị di động  
2014  
Nội dung  
I. ListView  
1. ListView là gì?  
2. Các bước thực hiện để sử dụng một ListView  
3. Các xử lý trên ListView  
4. ListActivity  
II. Tạo Custom Layout cho ListView  
Lập trình Android  
2
1. ListView là gì?  
ListView là một dạng điều  
khiển nâng cao có chức  
năng hỗ trợ hiển thị dữ  
liệu theo dạng từng dòng.  
Lập trình Android  
3
2. Các bước thực hiện để sử dụng ListView  
❑ Bước 1: Đưa dữ liệu cần hiển thị lên ListView vào một mảng  
hoặc danh sách (ArrayList, mảng thông thường, mảng đối  
tượng,…).  
❑ Bước 2: Tạo một ListView trên giao diện.  
❑ Bước 3: Tạo một đối tượng ArrayAdapter để liên kết giữa  
ListView và mảng hoặc danh sách dữ liệu.  
ArrayAdapter là gì?  
Là lớp dùng để vẽ các dòng dữ liệu trong danh sách lên  
ListView, ngoài ra nó còn cho phép ta tùy chỉnh cách hiển thị dữ  
liệu theo mục đích khác nhau.  
Lập trình Android  
4
3. Các xử lý trên ListView  
❑ Lấy ListView thông qua Id của ListView  
ListView lvTenLV = (ListView) findViewById(R.id.idcuaListView);  
❑ Tạo ArrayAdapter  
ArrayAdapter<[Kiểu mảng]>[Tên mảng adapter];  
❑ Đưa dữ liệu từ mảng vào ArrayAdapter  
[Tên mảng adapter] = new ArrayAdapter<Kiểu mảng>  
(this,android.R.layout.simple_list_item_1,[tenMangDuLieu]);  
❑ Cách đổ dữ liệu lên ListView  
lvTenLV.setAdapter(tenMangAdapter);  
Lập trình Android  
5
4. ListActivity  
Lập trình Android  
6
4. ListActivity  
Id ListView bắt buộc: @android:id/list  
Kết thừa ListActivity  
Lập trình Android  
7
4. ListActivity  
Lập trình Android  
8
4. ListActivity  
Lập trình Android  
9
Nội dung  
I. ListView  
II. Tạo Custom Layout cho ListView  
1. Custom Layout là gì? Tại sao phải tạo Custom Layout?  
2. Cách sử dụng ImageView  
3. Các bước thực hiện để tạo Custom Layout cho ListView  
4. Hướng dẫn tạo lớp ArrayAdapter  
Lập trình Android  
10  
2. Tại sao phải tạo Custom Layout?  
❑ Custom Layout là layout được tạo và tùy biến lại cho phù hợp  
với yêu cầu sử dụng.  
❑ Minh họa sự khác nhau giữa ListView sử dụng layout bình  
thường và ListView có layout đã được tùy biến:  
11  
2. Cách sử dụng ImageView  
❑ Tạo giao diện sử dụng ImageView:  
Chọn biểu tượng ImageView trong Palette → Images & Media →  
ImageView.  
❑ Lấy ImageView đã tạo thông qua Id của nó:  
ImageView tenImageView=(ImageView)findViewById(R.id.idImageView);  
❑ Đưa hình ảnh vào ImageView:  
tenImageView.setImageDrawable(R.drawable.tenHinh);  
✓ Chú ý: Ở đây, hình nằm trong thư mục res/drawable. Tên hình  
phải viết liền và chữ đầu tiên phải là chữ thường.  
Lập trình Android  
12  
3. Các bước tạo và sử dụng Custom Layout  
Sau khi đã có ListView trên giao diện, chúng ta có thể tạo Custom  
Layout cho ListView như sau:  
❑ Bước 1: Tạo thêm một layout cho một item của ListView.  
❑ Bước 2: Tạo lớp Custom Adapter kế thừa từ lớp  
ArrayAdapter.  
❑ Bước 3: Tạo một lớp dùng để quản lý dữ liệu.  
❑ Bước 4: Hiển thị dữ liệu lên ListView.  
Lập trình Android  
13  
4. Lớp Custom ArrayAdapter  
❑ Lớp Custom ArrayAdapter kế thừa từ lớp ArrayAdapter  
public class CustomAdapter extends ArrayAdapter<[Kiểu mảng]>{  
public CustomAdapter(Context context, int resource,  
ArrayList<[Kiểu mảng]> objects) {  
super(context, resource, objects);  
}
}
Lập trình Android  
14  
4. Lớp Custom ArrayAdapter  
❑ Phương thꢀc getView()  
@Override  
public View getView(int position, View convertView, ViewGroup parent){  
View view = null;  
LayoutInflater inflater = (LayoutInflater) context.getSystemService  
(Context.LAYOUT_INFLATER_SERVICE);  
view = inflater.inflate(resId, null);  
//Lấy các điều khiển  
...........  
//Lấy nꢀi dung cꢁn hiển thꢂ ở vꢂ trí thứ position  
[Kiꢀu mꢁng] c = tenMang.get(position);  
if (c != null) {  
//Đưa thông tin lên TextView và hình lên ImageView  
textView.setText(c.getThongTin());  
imageView.setImageResource(c.getImg_id());  
}
return view;  
}
Lập trình Android  
15  
4. Lớp Custom ArrayAdapter  
Với cꢀc tham sô  
́:  
❑ position: là vị trí của phꢁn tư  
̉
trong danh sꢀch.  
❑ convertView: dùng để lấy về cꢀc control của mỗi item.  
❑ parent: chính là datasource được truyền vào từ  
MainActivity.  
Chꢂ ꢃ:  
View là dạng tham chiếu đối tượng, nên mọi sự thay đổi của  
cꢀc đối tượng bên trong View thì nó cũng biết sự thay đổi đó trả  
về view này, tức là trả luôn về cꢀc thông số mới mà ta vừa thay  
đổi.  
Lập trình Android  
16  
Lập trình Android – Module 1  
17  
pptx 17 trang baolam 22600 Free
Bạn đang xem tài liệu "Bài giảng Lập trình Android - Bài 3: ListView. Tạo Custom Layout cho ListView", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pptxbai_giang_lap_trinh_android_bai_3_listview_tao_custom_layout.pptx