Bài 19: Chuyển đổi giữa các Activity với nhau trong Android

Từ bài 1 cho đến bây giờ chúng ta mới chỉ thao tác duy nhất ở một Activity đúng không các bạn? Nhưng trong một ứng dụng thì không thể nào có một màn hình duy nhất được mà nó còn rất nhiều màn hình khác, và việc tương tác giữa các màn hình là điều mà bạn không thể nào tránh khỏi.

Và chuyển đổi giữa các màn hình này với màn hình khác hay nó cách khác là giữa Activity này với Activity khác thì cũng là chuyện thường làm, vậy hôm nay chúng ra sẽ tìm hiểu nó và ở bài sau chúng ta sẽ tìm hiểm cách truyền dữ liệu giữa hai activity nhé.

Để gọi một Activity khác thì thông thường chúng ta chỉ có một cách duy nhất là sử dụng Intent, kiến thức về Intent rất rộng nên mình sẽ nói ở một bài viết khác còn hôm nay các bạn chỉ cần nắm rõ cách dùng là được bởi vì nó là cú pháp mặc định không thay đổi được.

Chúng ta bắt tay vào làm nào, bây giờ mình sẽ tạo ra 2 Activity A và B, ở màn hình A sẽ có nút Button khi click vào thì nó sẽ chuyển qua màn hình B nhé, bây giờ mình sẽ khởi tạo các file như sau:

Tổng quát project sẽ như sau:

Chuyển đổi giữa các activity trong android

Chuyển đổi giữa các activity trong android

1. Tạo ActivityA, đây là Activity khởi động đầu tiên khi vào app nhé, mặc định khi khởi tạo project là MainActivity bạn sửa tên thành ActivityA là được:

ActivityA.java


2. Đây là file layout_a, layout của ActivityA bạn:

layout_a.xml


3. Chuột phải vào package chọn New => Java class và tạo ActivityB như sau:

ActivityB.java


4. Chuột phải vào thư mục layout chọn New => Layout resource file để tạo layout cho ActivityB:

layout_b.xml


5. Chỉnh sửa lại file strings.xml vì ở trên mình định nghĩa text trong này, vào value => string.xml để sửa đổi:

strings.xml


Mình sẽ giải thích đoạn code chính ở ActivityA như sau:


Khi click vào nút Button ở màn hình A nó sẽ thực hiện việc call ActivityB thông qua khởi tạo một đối tượng intent:


Ở trên bạn sẽ truyền vào 2 params, 1 là Activity hiện tại và param thứ 2 chính là Activity đích mà bạn muốn chuyển đến, rất đơn giản đúng không nào.Sau đó gọi hàm startActivity() và truyền vào intent đã khai báo thì tự động nó sẽ hiểu là bạn đang muốn di chuyển từ ActivityA sang Activity B và lúc nào ActivityB sẽ hiện lên.

Một lưu ý nhỏ là khi bạn khởi tạo một Activity bạn phải khai báo trong file AndroidManifest.xml chứ không là xảy ra lỗi ngay các này mình sẽ nói rõ trong bài cấp quyền trong Android ở bài sau nữa nhé.

AndroidManifest.xml


Các bạn nên sửa lại tên package cho đúng như project các bạn không là sẽ lỗi đó nhé, không thì bạn cứ import project phía dưới của mình đã có sẵn ở github.

Video hướng dẫn chuyển đổi giữa các Activity trong android

Download Source Code


Chúc các bạn thành công!

Tiếp theo

Bài 19: Chuyển đổi giữa các Activity với nhau trong Android
5 (100%) 1 vote

Add Comment

*