Thiết kế giao diện bao gồm:
-
2 EditText dùng để nhập mã và tên sinh viên
-
4 TextView, trong đó 2 dùng làm label, 1 textview hiển thị số lượng sinh viên, 1 dùng hiển thị thông báo khi người dùng nhập sai
-
3 Button Thêm, Xóa, Sửa đối tượng sinh viên
-
1 ListView hiển thị danh sách sinh viên
Class student có:
-
2 thuộc tính là student_id và student_name
-
1 biến stactic soluong
-
Hàm tạo không đối số và hàm tạo có 2 đối số
-
Các phương thức get set
-
Phương thức trả về thông tin sinh viên
XEM THÊM ==> Hướng dẫn cài đặt chi tiết
Nguồn: Sharecode.vn
Bước 1:Thiết kế giao diện bao gồm:
-
2 EditText dùng để nhập mã và tên sinh viên
-
4 TextView, trong đó 2 dùng làm label, 1 textview hiển thị số lượng sinh viên, 1 dùng hiển thị thông báo khi người dùng nhập sai
-
3 Button Thêm, Xóa, Sửa đối tượng sinh viên
-
1 ListView hiển thị danh sách sinh viên
Bước 2:
Tạo class student trong thư mục src
Mô tả:
Class student có:
-
2 thuộc tính là student_id và student_name
-
1 biến stactic soluong
-
Hàm tạo không đối số và hàm tạo có 2 đối số
-
Các phương thức get set
-
Phương thức trả về thông tin sinh viên
Code cụ thể như sau:
public class student {
private int student_id;
private String student_name;
static public int soluong;
//Hàm tạo không đối số
public student()
{
student_id=0;
student_name="";
}
//Hàm tạo 2 đối số
public student(int id, String name)
{
student_id=id;
student_name=name;
}
//Phương thức get, set
public int getStudent_id()
{
return student_id;
}
public String getStudent_name()
{
return student_name;
}
public void setStudent_id(int id)
{
this.student_id=id;
}
public void setStudent_name(String name)
{
this.student_name= name;
}
//Trả về thông tin sinh viên
public String toString()
{
return "Id:"+this.student_id+" - Name:"+this.student_name;
}
Bước 3: Code phần quản lý danh sách sinh viên
Trong file MainActivity.java . Tạo 1 ArrayList listsv chứa danh sách các đối tượng sinh viên
ArrayList<student> listsv=new ArrayList<student>();
Hàm findStudentById tìm kiếm sinh viên bằng Id
public student findStudentById(int id, ArrayList<student> list_student)
{
for (student std : list_student) {
if(std.getStudent_id()==id)
return std;
}
return null;
}
Hàm showListView dùng để hiển thị danh sách sinh viên lên listView
public void showListView(ArrayList<student> listsv) {
tv_sl.setText("Số lượng : "+student.soluong);
//Gán dữ liệu từ ArrayList vào ListView
ArrayAdapter<student> array_adt=new ArrayAdapter<student>(getApplicationContext(), android.R.layout.simple_list_item_1 , listsv);
lv.setAdapter(array_adt);
}
Sự kiện OnItemClickListener chọn sinh viên từ danh sách sv trong ListView
lv.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
// TODO Auto-generated method stub
student sv_click= (student) arg0.getItemAtPosition(arg2);
et1.setText(sv_click.getStudent_id()+"");
et2.setText(sv_click.getStudent_name());
}
});
Bước 4: Code phần nhập, xóa, sửa ,trong nút thêm ta viết như sau
Lấy id và tên sinh viên từ dữ liệu người dùng nhập vào edittext
int id_sinhvien = Integer.parseInt(et1.getText().toString());
String ten_sinhvien = et2.getText().toString();
Xét nếu như id người dùng nhập vào chưa có trong danh sách sẽ thêm sinh viên đó.
if(findStudentById(id_sinhvien, listsv) == null)
{
student sv=new student();
student.soluong++;
sv.setStudent_id(id_sinhvien);
sv.setStudent_name(ten_sinhvien);
listsv.add(sv);
}
Tương tự ta viết code cho nút xóa và sửa, xóa ta dùng phương thức remove
listsv.remove(sv);
Sửa ta dùng phương thức set
listsv.set(index, sv);