Bài 16: Kết hợp Spinner với ListView trong Android (P2)

Leave a Comment
 Tương tự như các bài tập trước, chúng ta phải đặt id cho các control. Bài tập này bạn tự nhìn vào để xem Tôi đặt Id như thế nào, Tôi không nhắc lại nữa.
- Chúng ta lần lượt xem nội dung coding của các class trong phần xử lý nghiệp vụ:
- 1) Class Goods:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
package tranduythanh.com;
/**
 * Class này là class cha của Product và Catalog
 * vì Product và Catalog đều có Id và Name
 * nên Tôi tạo class này để sử dụng lại code
 * @author drthanh
 *
 */
public class Goods {
 //Id để lưu mã
 //Name để lưu tên
 private String id;
 private String name;
 public String getid() {
 return id;
 }
 public void setid(String id) {
 this.id = id;
 }
 public String getName() {
 return name;
 }
 public void setName(String name) {
 this.name = name;
 }
 public Goods(String id, String name) {
 super();
 this.id = id;
 this.name = name;
 }
 public Goods() {
 super();
 }
 public String toString() {
 return this.id+" - "+this.name;
 }
}
- 2 – class Product:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
package tranduythanh.com;
/**
 * Class này để lưu thông tin sản phẩm
 * nó kế thừ từ Goods để lấy mã và tên
 * Tôi cho nó tham chiếu tới Catalog
 * để nó có thể biết được nó thuộc danh mục nào
 * @author drthanh
 *
 */
public class Product extends Goods{
 //Lấy tham chiếu để lập trình cho lẹ
 private Catalog Dmuc;
public Catalog getDmuc() {
 return Dmuc;
 }
public void setDmuc(Catalog dmuc) {
 Dmuc = dmuc;
 }
public Product(String ma, String name, Catalog dmuc) {
 super(ma, name);
 Dmuc = dmuc;
 }
public Product(String ma, String name) {
 super(ma, name);
 }
public Product() {
 super();
 }
}
- 3 – class Catalog:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
package tranduythanh.com;
import java.util.ArrayList;
/**
 * Class dùng để lưu trữ thông tin danh mục
 * và danh sách các sản phẩm thuộc danh mục
 * @author drthanh
 *
 */
public class Catalog extends Goods {
 private ArrayList<Product>listSp=null;
 public Catalog(String ma, String name) {
 super(ma, name);
 this.listSp=new ArrayList<Product>();
 }
public Catalog() {
 super();
 this.listSp=new ArrayList<Product>();
 }
 /**
 * kiểm tra sản phẩm đã tồn tại trong danh mục hay chưa
 * @param p
 * @return true nếu tồn tại
 */
 public boolean isDuplicate(Product p)
 {
 for(Product p1: listSp)
 {
 if(p1.getid().trim().equalsIgnoreCase(p.getid().trim()))
 return true;
 }
 return false;
 }
 /**
 * thêm 1 sản phẩm vào danh mục
 * thêm thành công =true
 * @param p
 * @return
 */
 public boolean addProduct(Product p)
 {
 boolean isDup=isDuplicate(p);
 if(!isDup)
 {
 p.setDmuc(this);
 return listSp.add(p);
 }
 return !isDup;
 }
 public ArrayList<Product>getListProduct()
 {
 return this.listSp;
 }
 public int size()
 {
 return listSp.size();
 }
 public Product get(int i)
 {
 return listSp.get(i);
 }
}
Xem tiếp P3...

0 nhận xét:

Đăng nhận xét