Thứ Sáu, 17 tháng 6, 2016

Sử dụng Intent Truyền dữ liệu qua lại giữa các activity trong Android

Ở bài trước mình đã hướng dẫn các bạn làm 1 ví dụ đơn giản là sử dụng intent để chuyển qua lại giữa các màn hình. Ở bài này, mình sẽ tiếp tục hướng dẫn các bạn làm về Intent nhưng nâng cao hơn 1 chút đó là truyền cả dữ liệu qua lại giữa các màn hình.
Đầu tiên các bạn hãy hiểu việc truyền dữ liệu trong Android cũng tương tự như lưu chuyển hàng hóa ngoài thực tế. Bên gửi thì sẽ đóng gói tất cả hàng hóa thành 1 đai kiện, sau đó chuyển tất cả sang bên nhận. Tương tự như thế, trong Android ta sử dụng đối tượng Bundle để đóng gói dữ liệu để truyền tải qua các Activity khác.
Mình sẽ làm 1 ví dụ với chức năng là thực hiện 1 phép tính tổng. Ở màn hình 1, người dùng nhập 2 số a và b, sau đó nhấn nút tính, kết quả sẽ được hiện thì ở màn hình thứ 2. Tại màn hình thứ 2 mình ấn back để về màn hình 1 để thực hiện phép tính khác.
56
Chúng ta bắt đầu nào.

Bước 1. Tạo project mới với cấu trúc như sau.

57

Bước 2. Xây dựng MainActivity có giao diện như sau

58
dưới đây là code xml của màn hình chính
sau khi đã có giao diện các bạn tiến hành code trong file java như sau.
60
các bạn quan sát code, mình đã chú thích rất kĩ trong code.

Bước 3. Xử lý ở ResultActivity

thiết kế giao diện
59
các bạn đã được học qua các control cơ bản, minh nghĩ các bạn sẽ dễ dàng thiết kế màn hình như trên.
Tiếp tục vào file java của ResultActivity và tiến hành code
Bên ResultActivity chúng ta tiến hành lấy bundle dựa vào key từ bên MainActivity truyền sang, sau đó từ bundle chúng ta lấy ra 2 số a và b, thực hiện tính tổng và gán vào các textview. Cũng khá đơn giản đúng không.

Bước 4. Run project và xem thành quả

Vừa rồi mình đã hướng dẫn các bạn làm 1 ví dụ nâng cao hơn về sử dụng intent để truyền dữ liệu qua lại giữa các màn hình. Ví dụ cũng khá phức tạp, các bạn hãy nghiền ngẫm và làm lại nhiều lần để hiểu hơn về intent. Các bạn có thể tham khảo và đăng ký 1 khóa học Android từ cơ bản đến nâng cao tại đây để được hướng dẫn chi tiết nhất. Chúc các bạn thành công.
Gợi ý xem thêm: