Tôi đang viết một ứng dụng sẽ có hai Hoạt động, khi người dùng nhấn nút quay lại trên hoạt động thứ hai, một hộp thoại sẽ bật lên yêu cầu người dùng xác nhận hành động. Vì vậy, làm thế nào để tôi đánh chặn này? Tôi nghiêm túc nghi ngờ về coz này backstack là một phần của hệ điều hành chính nó. Có ai tìm thấy một cách giải quyết?Chặn nút quay lại
Trả lời
Trong một hoạt động bạn chỉ có thể ghi đè lên
onBackPressed()
chỉnh sửa: đó là api lvl 5 +:/4 và dưới đây bạn gotta ghi đè onKeyDown()
Rất tốt, cảm ơn @schwiz –
Chỉ cần ghi đè phương thức onKeyDown trong hoạt động của bạn và tìm nút quay lại. Trả về true để sự kiện được tiêu thụ.
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
//Do something here
return true;
}
return super.onKeyDown(keyCode, event);
}
+1, tôi đã làm điều này trước và nó chắc chắn hoạt động mặc dù khi tôi sử dụng nó, nó đã được trước khi tôi hiểu khái niệm của nhiều hoạt động ... –
// Làm somethings ở đây (Tôi đang cố gắng để hiển thị một bánh mì nướng cho tôi mã kiểm tra) không hoạt động đối với tôi. Và khi tôi nhấn nút quay lại thì không có gì xảy ra. –
Sai lầm của tôi, tôi không gọi Toast.show(). Mã làm việc. Thanx @skorulis –
Như schwiz đã chỉ ra, bạn sẽ muốn ghi đè phương thức onBackPressed()
trong lớp hoạt động của mình (http://developer.android.com/reference/android/app/Activity.html#onBackPressed()).
Tôi chỉ muốn thêm rằng nếu bạn muốn ở một giai đoạn nào đó tiếp tục hoặc truy cập hoạt động chuẩn sau (sau khi nói, hiển thị hộp thoại), thì bạn chỉ cần gọi super.onBackPressed()
hoặc ActivityName.super.onBackPressed()
từ bất kỳ nơi nào trong Hoạt động.
- 1. Ngăn chặn nút quay lại
- 2. Nút quay lại Actionbarsherlock không quay lại
- 3. Ngăn chặn ShowDialog() quay lại khi nhấn nút OK
- 4. Ngăn chặn nút quay lại từ đóng hộp thoại
- 5. Khối Nút Quay lại trong android
- 6. Nút quay lại Android không quay lại hoạt động trước
- 7. Nút quay trở lại MainActivity
- 8. Nút quay lại Mobile Safari
- 9. Tải lại trang trên nút quay lại
- 10. Đường ray: Ngăn chặn chèn trùng lặp do nhấn nút quay lại và lưu lại
- 11. Ngăn chặn tình cờ Quay lại
- 12. loại đầu vào - nút quay lại?
- 13. Nút điều khiển điều hướng quay lại
- 14. ActionBarSherlock Thay đổi màu nút quay lại?
- 15. Android DroidGap tắt nút quay lại
- 16. Ghi đè nút quay lại Android
- 17. Hoạt ảnh nút quay lại tùy chỉnh
- 18. Nút quay lại Android không hoạt động
- 19. Nút quay lại của UINavigationController biến mất?
- 20. Nút Quay lại (Hành vi Trình duyệt)
- 21. Nút quay lại khi reloadOnSearch: false
- 22. UINavigationController và nút quay lại hành động
- 23. Ajax + nút quay lại và tiến lên
- 24. Quay trở lại nút trong một trang
- 25. Trang làm mới nút quay lại
- 26. Trình duyệt nút quay lại GWT
- 27. Android - Mô phỏng Nút Quay lại
- 28. Tùy chỉnh nút quay lại cho UIImagePickerController?
- 29. Làm thế nào để Ngăn chặn một Alert Dialog Bắt Closed bởi Nút Quay lại
- 30. BlockUI jquery plugin giữ trang bị chặn sau nút "quay lại". Opera/FireFox
Hãy suy nghĩ kỹ về việc này. Đây là hành vi Android không chuẩn và có thể làm phiền người dùng của bạn. Bạn đang cố gắng tránh chúng mất dữ liệu chưa được lưu? – I82Much
Có chính xác @ I82Much! –