Thông báo ngắn cung cấp thông tin phản hồi dễ hiểu về thao tác trong một cửa sổ nhỏ bật lên. Thông báo này chỉ chiếm lượng không gian cần thiết để hiển thị nội dung thông báo. Bạn vẫn có thể nhìn thấy và tương tác với hoạt động hiện tại. Thông báo ngắn tự động biến mất sau khi hết thời gian hiển thị.
Ví dụ: khi bạn nhấp vào Gửi trên một email, thông báo nhanh "Đang gửi thư..." sẽ xuất hiện, như trong ảnh chụp màn hình dưới đây:
Nếu ứng dụng của bạn dành cho Android 12 (API cấp 31) trở lên, thông báo ngắn sẽ bị giới hạn ở 2 dòng văn bản và hiển thị biểu tượng ứng dụng bên cạnh văn bản. Lưu ý độ dài của văn bản này thay đổi theo kích thước màn hình. Vì vậy, bạn nên tạo văn bản ngắn gọn nhất có thể.
Lựa chọn thay thế cho việc sử dụng thông báo ngắn
Nếu ứng dụng chạy trên nền trước, hãy cân nhắc sử dụng thanh thông báo nhanh thay vì sử dụng thông báo ngắn. Thanh thông báo nhanh bao gồm các tùy chọn mà người dùng có thể thao tác nhằm mang lại trải nghiệm ứng dụng tốt hơn.
Nếu ứng dụng chạy trong nền và bạn muốn người dùng thực hiện thao tác nào đó, hãy sử dụng thông báo.
Tạo bản sao đối tượng Thông báo ngắn (Toast)
Sử dụng phương thức makeText()
. Phương thức này nhận các tham số sau:
- Hoạt động
Context
. - Văn bản nên xuất hiện trước người dùng.
- Thời gian thông báo ngắn hiển thị trên màn hình.
Phương thức makeText()
trả về một đối tượng Toast
đã khởi tạo đúng cách.
Hiện thông báo ngắn
Để hiển thị thông báo ngắn, hãy gọi phương thức show()
, như được minh họa trong ví dụ sau:
Kotlin
val text = "Hello toast!" val duration = Toast.LENGTH_SHORT val toast = Toast.makeText(this, text, duration) // in Activity toast.show()
Java
CharSequence text = "Hello toast!"; int duration = Toast.LENGTH_SHORT; Toast toast = Toast.makeText(this /* MyActivity */, text, duration); toast.show();
Tạo chuỗi các cuộc gọi bằng phương thức thông báo ngắn
Bạn có thể liên kết các phương thức để tránh bị giữ lại đối tượng Toast
, như hiển thị trong đoạn mã sau:
Kotlin
Toast.makeText(context, text, duration).show()
Java
Toast.makeText(context, text, duration).show();