Lập trình Android – Ứng dụng Quản Lý Sinh Viên

Lập trình Android – Ứng dụng Quản Lý Sinh Viên

Mục tiêu:

Xây dựng chương trình cho phép nhập, xóa, sửa nhiều sinh viên, liệt kê danh sách sinh viên

Ghi chú:

Vì muốn bài lab gọn nhẹ đơn giản nên mình không lưu lại danh sách sinh viên vào bộ nhớ thiết bị, do đó khi tắt chương trình, danh sách bị xóa. Muốn lưu được thì đợi đến bài dataStorage sẽ biết.

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);

Kết thúc.

Bạn thấy bài viết này như thế nào?: 
Average: 8.7 (10 votes)
Ảnh của Khanh Hoang

Khanh Hoang - Kenn

Kenn is a user experience designer and front end developer who enjoys creating beautiful and usable web and mobile experiences.

Advertisement

 

jobsora

Dich vu khu trung tphcm

Dich vu diet chuot tphcm

Dich vu diet con trung

Quảng Cáo Bài Viết

 
Trải nghiệm nhanh những tính năng mới của OS X Mountain Lion

Trải nghiệm nhanh những tính năng mới của OS X Mountain Lion

Đúng như thông báo trước đó, Apple vừa bán ra HĐH mới nhất của mình là OS X Mountain Lion qua Mac App Store với giá 20 USD. "Sư tử núi" được bổ sung hơn 200 tính năng mới, trong đó thay đổi lớn nhất có lẽ chính là khả năng tích hợp Mac với dịch vụ đám mây iCloud. Dưới đây là 8 tính năng đáng chú ý trong HĐH này.

Apple khởi động năm 2012 với 52% thị phần trình duyệt web di động

Apple khởi động năm 2012 với 52% thị phần trình duyệt web di động

iPhone và iPad của Apple kết thúc năm 2011 với vị trí 1 và 2 trên thị trường trình duyệt web di động.

Lĩnh vực lọc nước dân dụng - Xuất khẩu trên 150 nước đến năm 2040

Lĩnh vực lọc nước dân dụng - Xuất khẩu trên 150 nước đến năm 2040

Với Karofi, trong năm qua, doanh nghiệp vẫn duy trì tăng trưởng hai con số nhờ ứng dụng những giải pháp công nghệ mới vào thiết bị, sản phẩm.

Công ty diệt chuột T&C

 

Diet con trung