01/10/2018, 08:50

Dialog chuyển tiếp liên tục đúng bằng một giá trị cho trước

MÌnh là một newbie. Mình có một trường hợp như thế này: Tính chỉ số sức khỏe BMI cho cả trường học (không bàn đến lý do vì sao cần phải tính trung bình như thế nhé).
Để tính đc BMI của từng học sinh thì cần phải nhập 2 chỉ số Chiều cao và Cân nặng của học sinh ấy. Để tính được trung bình của cả trường thì cần phải lấy một số hs làm mẫu đại diện để chia trung bình (số mẫu này mỗi trường học lại lấy khác nhau nên không cố định là bao nhiêu mẫu).
Mình đang có ý tưởng trình bày như sau:
1 EditText A là Tổng số HS của trường học
1 EditText B là Số học sinh làm mẫu đại diện
Còn trình bày 2 EditText là Chiều cao và Cân nặng thì làm sao cho: chẳng hạn trường X lấy 10 mẫu, tức là nhập ở B là 10 (hs) thì t phải có 10 cặp EditText Chiều cao + Cân nặng để họ nhập. Tương tự, trường y nhập ở B là 20 thì có 20 cặp, …
Để giải quyết vấn đề này, tôi làm 1 cái Button. Sau khi nhập ở EditText A, B xong rồi, thì click vào Button “Start”. Kết quả là có một Dialog hiển thị lên và cho phép nhập vào cặp EditText nữa là Chiều cao và Cân nặng của học sinh thứ 1. Nhập xong, người dùng bấm Ok thì lại được chuyển sang cặp EditText tiếp theo, … cứ như vậy cho đến khi hết số mẫu mà người dùng khai báo lúc đầu ở EditText B.

Minh họa ở hình đính kèm.

Mình muốn hỏi: Hướng này có khả thi không (có làm được không)? Nếu thế thì mình làm đc đến bật ra Dialog. Nhưng khi bấm ok thì nó chuyển sang mẫu 2, 3, … thì mình chưa biết làm thế nào?
rồi làm sao mà số lần hiển thị ra diaglog cho mẫu 2, 3, … đó phải bằng đúng giá trị mà đã nhập ở EditText B?
Nếu không khả thi thì làm thế nào để có thể giải quyết bài toán này của mình đây ạ? Có thể cho mình gợi ý được không? ít ra thì mình cũng có từ khóa để google ạ

Tao Không Ngu. viết 10:57 ngày 01/10/2018

Hi Hùng phiêu.
Mọi thứ đều có thể. Tuy nhiên nó là một thiết kế giao diện tệ không trực quan.
Tác dụng của dialog không phải để làm những việc kiểu như vậy.

Hùng phiêu viết 10:53 ngày 01/10/2018

Hi Hùng phiêu.Mọi thứ đều có thể. Tuy nhiên nó là một thiết kế giao diện tệ không trực quan.Tác dụng của dialog không phải để làm những việc kiểu như vậy.

Cảm ơn bạn. Bạn có thể gợi ý cho mình cách xứ lý vụ này như thế nào không bạn? Mình chưa biết phải search thế nào, hay làm ntn vụ này nữa.

Nguyen Ca viết 10:51 ngày 01/10/2018

cho nhập số mẫu trước, có số mẫu rồi thì tạo ra 1 list (có thể dùng list card view, chưa thử :D),.
trên môi cardview có 2 textbox để nhập

Tao Không Ngu. viết 11:02 ngày 01/10/2018

Hi Hùng phiêu.
Thử kiếm vài quyển thiết kế UI đọc xem.

Hùng phiêu viết 10:56 ngày 01/10/2018

cho nhập số mẫu trước, có số mẫu rồi thì tạo ra 1 list (có thể dùng list card view, chưa thử :D),.trên môi cardview có 2 textbox để nhập

Cảm ơn bạn nhiều nhé. Vừa search thử về cardview, chưa tìm hiểu kỹ nhưng thấy có lẽ nó sẽ giải được vụ này của mình.
Cảm ơn bạn nhiều nhé!

Hi Hùng phiêu.Thử kiếm vài quyển thiết kế UI đọc xem.

Cảm ơn bạn nhiều nhé!

Tuấn Nguyễn Văn viết 10:53 ngày 01/10/2018

Theo mình bạn không cần đến dialog. Bạn cần làm 2 màn hình:

  • MH1: Chứa 2 cái EditText A,B. Sau khi nhập xong bạn cần truyền giá trị số học sinh mẫu đại diện qua MH2
  • MH2: Chia 2 phần, phần trên là khung nhập chiều cao cân nặng, bên dưới có 1 ListView hoặc RecycleView. Khi người dùng nhập vào 1 học sinh họ bấm OK, bạn thêm học sinh đó vào Listview/RecycleView, thông tin học sinh đó sẽ tự hiển thị bên dưới. Tất nhiên bạn cần đếm số lượng học sinh đã thêm vào, nếu đã đủ rồi thì không cho nhập nữa (không cho nhập bằng cách disable bỏ 2 cái EditText kia hoặc Button OK).
Hùng phiêu viết 10:55 ngày 01/10/2018

Cảm ơn các bạn!
Cho mình hỏi thêm là. Nếu mình bắt họ phải nhập hết cả 2 cái EditText là Chiều cao và Cân nặng thì mới đổ vào RecyclerView thì mình cần phải dùng đoạn code nào?
Và mình muốn RecyclerView nó hiển thị từ số liệu mới nhất lên trên cùng chứ không phải là mặc định là cũ lên trên cùng thì mình phải làm sao?
Mong nhận đc sự giúp đỡ từ mọi người!

Quân viết 10:59 ngày 01/10/2018

Thay vì chèn vào cuối dãy thì ta chèn vào đầu dãy thôi

Hùng phiêu viết 10:58 ngày 01/10/2018

Tức là sao bạn Quân ơi? Bạn có tài liệu nào về cái này không?

Bài liên quan
0