Hầu hết các hoạt động của tôi đều tải dữ liệu động từ máy chủ và khi trang trở lại tiêu điểm, tôi vẫn tải lại. Có vẻ như lãng phí để giữ chúng xung quanh nếu tôi chỉ sẽ tải lại chúng, vì vậy tôi nghĩ đến việc gọi kết thúc() trên chúng nếu người dùng điều hướng khỏi trang. Khó hiểu nếu một số hoạt động bạn có thể nhấn nút quay lại để đi và những người khác không vì tôi đã gọi kết thúc() trên chúng, vì vậy tôi đã tự hỏi nếu thực hành xấu của nó chỉ để gọi kết thúc() trên tất cả các hoạt động mà người dùng điều hướng khỏi ? (Tôi có một thanh điều hướng ở dưới cùng của mỗi hoạt động vì vậy nút quay lại là không cần thiết). Hoặc, là nó thực hành tốt hơn không gọi kết thúc() trên bất kỳ hoạt động và chỉ hy vọng họ không làm chậm điện thoại và hệ điều hành sẽ chăm sóc rác thu thập chúng? Tôi mới sử dụng chương trình Android và không có điện thoại Android nên tôi không chắc thực tế phổ biến/tốt nhất trong tình huống này là gì, hoặc chỉ là vấn đề sở thích cá nhân. Ngoài ra, có thể hướng dẫn Android giữ lịch sử hoạt động sao cho nút quay lại vẫn hoạt động, nhưng kết thúc() khi chúng điều hướng đi để chúng không cần thiết chiếm dụng tài nguyên?Thực hành tốt nhất để gọi kết thúc() trên một hoạt động trong Android?
Trả lời
Mặc dù bạn có thể tải lại tất cả dữ liệu của mình khi quay lại hoạt động, vẫn không có điểm nào khi gọi số finish()
.
Khi hoạt động bị ẩn, chúng không sử dụng tài nguyên và không có vấn đề gì thực sự. Chỉ cần để chúng như cũ, và sau đó khi người dùng điều hướng trở lại, nó sẽ tải lại nó theo yêu cầu.
Trong trạng thái này, chúng cũng có thể được thu gom rác nếu cần - tất cả đều được android chăm sóc.
Trong hầu hết các trường hợp, bạn không cần phải (và không nên) gọi kết thúc(); Android quản lý các hoạt động cho bạn.
Nếu bạn cần dọn dẹp khi người dùng rời khỏi hoạt động, bạn có thể làm điều đó trong các hoạt động gọi lại khác nhau như onDestroy().
Nếu bạn chưa làm như vậy, hãy đọc Activities trong hướng dẫn dành cho nhà phát triển Android.
Bạn không nên gọi finish()
trừ khi bạn chắc chắn rằng hoạt động đó sẽ không được thực hiện trong một thời gian dài. Tốt hơn là hãy để Android xử lý việc cần làm với nó. Đặt mã vệ sinh của bạn vào onPause()
và mã tải của bạn ở onResume()
.
- 1. Kết thúc cuộc gọi() trên một hoạt động Android không thực sự hoàn thành
- 2. Android 4.0.3 và kết thúc hoạt động
- 3. kết nối TCP Android thực hành tốt nhất
- 4. thực hành tốt nhất để sử dụng url hành động trong khi gọi ajax trong cakePHP
- 5. Gọi hành động sau khi viewpager kết thúc
- 6. Thực tiễn tốt nhất cho Android - lượt xem/hoạt động
- 7. Cách phát hành camera sau khi hoạt động kết thúc trong Android?
- 8. Android "Thực hành tốt nhất" sử dụng Intents
- 9. Bạn có nên gọi kết thúc() sau khi bắt đầu Hoạt động mới trong Android không?
- 10. Kết thúc sự kiện hoạt hình android
- 11. Thực hành SQLite tốt nhất trên iPhone
- 12. htaccess thực hành tốt nhất
- 13. Kết thúc hoạt động gọi điện thoại khi AsyncTask hoàn
- 14. Thực tiễn tốt nhất về Android Cập nhật giao diện người dùng từ BroadcastReceiver đến một hoạt động nhất định
- 15. Thực hành tốt nhất để viết bookmarklets
- 16. Triển khai chuỗi kết nối ASP.NET thực hành tốt nhất
- 17. Cách bắt đầu hoạt động trên hoạt ảnh kết thúc
- 18. Thực hành tốt nhất hợp nhất một phần SVN
- 19. Thực tiễn tốt nhất cho các kết nối di động liên tục trên Android?
- 20. Có thể kết thúc một hành động giữa SKAction không?
- 21. Cách kết thúc Hoạt động khi bắt đầu hoạt động khác trong Android?
- 22. Nút tràn buộc Chế độ Hành động kết thúc
- 23. NamedQuery: Thực hành tốt nhất
- 24. cmake thực hành tốt nhất
- 25. Thực hành tốt nhất cho Rails để có cùng một biểu mẫu trên nhiều trang
- 26. Thực hành tốt nhất về mảnh vỡ
- 27. Android SQLite Lời khuyên thực hành tốt nhất
- 28. thực hành tốt nhất Android cho vấn đề cấu trúc gói
- 29. Thực hành tốt nhất cho các sản phẩm tự động
- 30. Ghi đè Ext.data.Connection - Thực hành tốt nhất
Chỉ để kêu gọi người dùng Android * * (bạn nói bạn không có điện thoại Android), bạn có thể không cần sử dụng nút quay lại vì bạn có thanh điều hướng trên mọi hoạt động. Tôi cho một * luôn luôn * sử dụng nút quay lại không có vấn đề gì giao diện, chỉ cần ra khỏi thói quen tuyệt đối. Một cái gì đó để ghi nhớ ... chúc may mắn! – Tom