Listview trong Android
Listview trong Android
Listview trong Android – Một thành phần không thể thiếu trong việc thiết kế hiển thị các ứng dụng trong Android mà bạn nhất định phải biết. Để tìm hiểu kỹ hơn về thành phần này, hãy cùng với R2S chúng tôi tìm hiểu thật chi tiết ngay trong bài viết dưới đây nhé!
Listview trong Android là gì?
ListView trong Android là một View Group dùng để hiển thị danh sách các Views con (dữ liệu) theo một kiểu dạng danh sách có thể cuộn được và được sử dụng rộng rãi trong các ứng dụng Android.
Trong đó, sanh sách các mục được sẽ đượ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.
Array Adapter là gì?
Bạn có thể sử dụng adapter này nếu nguồn dữ liệu của bạn là một mảng. Mặc định, ArrayAdapter sẽ tạo một view cho mỗi phần tử trong mảng bằng cách sử dụ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 để hiển thị trong một ListView. Để khởi tạo đối tượng ArrayAdapter, bạn có thể sử dụng phương thức khởi tạo và chỉ định layout và mảng string (stringArray).
ArrayAdapter adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,stringArray);
Các bước thực hiện Listview trong Android
Để thực hiện Listview trong Android, các bạn cần thực hiện theo những bước sau:
- Bước 1: Chuẩn bị dữ liệu bao gồm dữ liệu được lưu trong mảng hoặc ArrayList.
- Bước 2: Khởi tạo đối tượng ArrayAdapter kết nối layout mặc định và nguồn dữ liệu, ví dụ như:
ArrayAdapter aa = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, data);
- Bước 3: Gắn ArrayAdapter vào ListView bằng cách sử dụng phương thức setAdapter(), ví dụ:
listview.setAdapter(aa);
- Bước 4: Xử lý sự kiện nếu có.
Listview trong android – Ví dụ mẫu
Bước 1: Tạo một Empty Activity và đặt tên là ListViewActivityDemo.
Bước 2: Thiết kế layout cho Activity.
Bước 3: Viết xử lý cho Activity theo cú pháp sau:
public class ListViewActivityDemo extends AppCompatActivity {
ArrayList al;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_list_view_demo);
// Bước 1: Chuẩn bị dữ liệu
al = new ArrayList();
al.add("Nguyễn Văn Xuân");
al.add("Trần Hạ");
al.add("Lê Thị Thu");
al.add("Huỳnh Đông");
// Bước 2: Khởi tạo đối tượng ArrayAdapter
ArrayAdapter aa = new ArrayAdapter(this,android.R.layout.simple_list_item_1, al);
// Bước 3: Gắn ArrayAdapter vào ListView
ListView lvDemo = (ListView)findViewById(R.id.lvDemo);
lvDemo.setAdapter(aa);
// Bước 4: Xử lý sự kiện long click
lvDemo.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
@Override
public boolean onItemLongClick(AdapterView<?> adapterView, View view, int i, long l) {
String data = (String) al.get(i);
Toast.makeText(ListViewActivityDemo.this,"Bạn đã chọn " + data, Toast.LENGTH_SHORT).show();
return false;
}
});
}
}
}
Bước 4: Build và run
Long click (chạm và giữ) một dòng trong ListView. Ví dụ chạm và giữ dòng đầu tiên.
Listview trong android – Bài tập thực hành
Thiết kế một ứng dụng quản lý thông tin nhân viên, cho phép quản lý các thông tin cơ bản của nhân viên bao gồm họ tên, ngày tháng năm sinh, địa chỉ email và nơi sinh.
Khi chọn vào nút “>>>”, màn hình sẽ 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 nút “ADD”, thì các 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. Khi mà 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
Khi người dùng chọn nút “SAVE”, lưu thông tin từ ListView vào tập tin employees.txt.
Lưu ý:
- Hệ thống sẽ tự động tăng mã nhân viên, bắt đầu từ số 1.
- Tên nhân viên, ngày tháng năm sinh và nơi sinh là các thông tin bắt buộc phải được nhập.
- Địa chỉ email phải được nhập đúng định dạng có ký tự @.
Kết luận
Listview trong Android là một thành phần quan trọng mà người học lập trình ứng dụng trên hệ điều hành này. Hy vọng những thông tin trên đây chúng tôi cung cấp là hữu ích với bạn. Đừng quên bỏ lỡ những bài học tiếp theo về lập trình của R2S nhé!
Bài viết gốc được đăng tại: giasutinhoc.vn