Listview trong Android với Xamarin (Bài 6)
Listview trong Android với Xamarin là một thành phần dùng để nhóm nhiều mục (item) và hiển thị chúng trong danh sách cuộn theo chiều dọc.
Danh sách các mục được tự động chèn vào danh sách bằng cách sử dụng một adapter chứa nội dung từ một nguồn như một mảng hoặc cơ sở dữ liệu.
Listview trong Android với Xamarin – Giới thiệu ArrayAdapter
Bạn có thể sử dụng adapter này khi nguồn dữ liệu của bạn là một mảng. Mặc định ArraryAdapter tạo một view cho mỗi phần tử trong mảng bằng phương thức toString() và đặt nội dung vào một TextView.
Giả sử bạn có một mảng string chứa dữ liệu được dùng để hiển thị trong một ListView. Khởi tạo một đối tượng ArrayAdapter sử dụng phương thức khởi tạo, chỉ định layout và mảng string (data).
listView.Adapter = new ArrayAdapter(this, Android.Resource.Layout.SimpleListItem1, data);
Listview trong Android với Xamarin – Các bước thực hiện
Bước 1: Chuẩn bị nội dung hiển thị lên ListView (Nội dung này có thể đọc từ file, database, internet, hoặc đơn giản thiết lập cố định trong code).
Bước 2: Tạo ArrayAdapter và liên kết vào ListView
Bước 3: Xử lý sự kiện (click hoặc long click) nếu có
Listview trong Android với Xamarin – Ví dụ
Giao diện ứng dụng gồm 1 ListView
Viết xử lý
List<string> data; protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); // Create your application here SetContentView(Resource.Layout.listview); var lvDemo = FindViewById<ListView>(Resource.Id.lvDemo); //Bước 1: Nội dung hiển thị lên ListView data = new List<string>(); data.Add("Lập trình Android với Java"); data.Add("Lập trình Android với C#"); //Bước 2: Tạo Adapter và liên kết vào ListView lvDemo.Adapter = new ArrayAdapter(this, Android.Resource.Layout.SimpleListItem1, data); //Bước 3: Xử lý sự kiện click lvDemo.ItemClick += LvDemo_ItemClick; } private void LvDemo_ItemClick(object sender, AdapterView.ItemClickEventArgs e) { Toast.MakeText(this, "Bạn vừa chọn " + data.ElementAt(e.Position), ToastLength.Short).Show(); }
Giao diện ứng dụng khi chạy
Khi người dùng click vào một item trên ListView
Listview trong Android với Xamarin – Bài tập thực hành
Ứng dụng cho phép quản lý các thông tin về nhân viên như họ tên, ngày tháng năm sinh, nơi sinh, địa chỉ email
Khi người dùng chạm >>>, hiển thị Date Picker cho phép chọn ngày tháng năm
Khi người dùng chọn vào “Please choose your province”, hiển thị danh sách cho phép chọn Tỉnh/TP
Khi người dùng chọn vào nút “ADD”, thông tin sẽ được hiển thị vào ListView
Khi người dùng long click vào một dòng trong ListView, hiển thị hộp thoại xác nhận. Nếu người dùng chọn “YES”, thông tin của nhân viên tương ứng với dòng được chọn bị xoá ra khỏi ListView