Lập trình android - Bài 3: Listview, tạo custom layout cho 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ữ ListView và mảng hoặc danh sách dữ liệu.

ArrayAdapter là gì?

ArrayAdapter được hiểu như cái modem mạng. Nó giúp ListView có thể “đọc và hiểu” dữ liệu từ mảng dữ liệu để hiện lên giao diện.

 

ppt13 trang | Chia sẻ: Mr Hưng | Lượt xem: 1036 | Lượt tải: 0download
Nội dung tài liệu Lập trình android - Bài 3: Listview, tạo custom layout cho listview, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Lập trình Android Bài 3: ListView. Tạo Custom Layout cho ListViewNgành Mạng & Thiết bị di độngwww.t3h.vn ListViewListView là gì?Các bước thực hiện để sử dụng một ListViewCác xử lý trên ListViewII. Tạo Custom Layout cho ListViewNội dungLập trình Android*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*Lập trình Android*2. Các bước thực hiện để sử dụng ListViewBướ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ữ ListView và mảng hoặc danh sách dữ liệu.ArrayAdapter là gì?ArrayAdapter được hiểu như cái modem mạng. Nó giúp ListView có thể “đọc và hiểu” dữ liệu từ mảng dữ liệu để hiện lên giao diện.3. Các xử lý trên ListViewLập trình Android*Lấy ListView thông qua Id của ListView ListView lvTenLV = (ListView) findViewById(R.id.idcuaListView);Tạo ArrayAdapter ArrayAdapter[Tên mảng adapter];Đưa dữ liệu từ mảng vào ArrayAdapter [Tên mảng adapter] = new ArrayAdapter (this,android.R.layout.simple_list_item_1,[tenMangDuLieu]);Cách đổ dữ liệu lên ListView lvTenLV.setAdapter(tenMangAdapter);ListViewTạo Custom Layout cho ListViewCustom Layout là gì? Tại sao phải tạo Custom Layout?Cách sử dụng ImageViewCác bước thực hiện để tạo Custom Layout cho ListViewHướng dẫn tạo lớp ArrayAdapterNội dungLập trình Android*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:Lập trình Android – Module 1*2. Tại sao phải tạo Custom Layout?2. Cách sử dụng ImageViewTạ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*3. Các bước tạo và sử dụng Custom LayoutSau 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* Lớp Custom ArrayAdapter kế thừa từ lớp ArrayAdapterpublic class CustomAdapter extends ArrayAdapter{ public CustomAdapter(Context context, int resource, ArrayList objects) { super(context, resource, objects); }}Lập trình Android*4. Lớp Custom ArrayAdapterLập trình Android*4. Lớp Custom ArrayAdapterPhương thức getView()@Overridepublic 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;}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*4. Lớp Custom ArrayAdapterLập trình Android – Module 1*

Các file đính kèm theo tài liệu này:

  • ppthocthu_bai3_4318.ppt
Tài liệu liên quan