Trong sự phát triển của một ứng dụng Android, tôi đã đi đến một tập hợp các phương pháp kiểu tiện ích mà tôi đã đưa vào một lớp tĩnh. Tất cả các phương pháp này được sử dụng trên nhiều Hoạt động và hầu hết chúng không yêu cầu bất kỳ thông tin nào từ Hoạt động gọi điện.Lớp tiện ích tĩnh với bối cảnh/hoạt động - Android
Tuy nhiên, bây giờ tôi có một số phương pháp yêu cầu Ngữ cảnh hoạt động và một phương thức yêu cầu Bản thân hoạt động. Hãy để tôi minh họa cho một số trong số họ:.
- getDeviceNaturalOrientation() - Sử dụng một Hoạt động của GetWindow() getWindowManager() getDefaultDisplay() để truy cập màn hình xoay, chiều rộng, và chiều cao để xác định hướng tự nhiên của thiết bị. .
- getDeviceOrientation() - Tương tự như trên nhưng để có được hiện tại hướng
- CreateFile() - Sử dụng bối cảnh để truy cập vào một số tài nguyên (chuỗi) và tạo và hiển thị một số nâng cốc chúc mừng
Bây giờ, các câu hỏi lớn của tôi về lớp học Utils này là:
- Cho đến nay, mỗi hàm lấy tham số Ngữ cảnh mà tôi chuyển từ bất kỳ Hoạt động nào tôi đang sử dụng, nhưng bạn có thể tạo một bối cảnh tĩnh hoặc biến Hoạt động trong Uti ls lớp và đặt nó ở đầu mỗi Hoạt động (như trong onCreate)? Biến này sẽ được sử dụng trong bất kỳ hàm nào yêu cầu một cá thể Ngữ cảnh hoặc Hoạt động.
- Giả sử ở trên không được khuyến nghị, có thể chuyển thông số Hoạt động sang một phương pháp hoặc có lý do để chỉ chuyển một Hoạt động dưới dạng Ngữ cảnh không? Các phương pháp tôi sử dụng cho các chức năng định hướng thiết bị ở trên là dành riêng cho đối tượng Hoạt động, không phải Ngữ cảnh, vì vậy hoặc tôi chuyển qua Hoạt động hoặc chuyển như Ngữ cảnh và truyền vào Hoạt động (âm thanh sau giống như ý tưởng khủng khiếp).
Ngoài ra, tôi rất cởi mở với ý tưởng rằng lớp Util này có thể không phải là cách để thực hiện những phương pháp này. mỗi lớp hoạt động sử dụng chúng.
Cảm ơn bạn, tôi đã chấp nhận câu trả lời của bạn. Tôi đã kết thúc việc giữ mọi thứ chủ yếu như chúng, nhưng tôi đã thay đổi một số phương thức để chỉ nhận tài nguyên/FragmentManager/etc ... khi cần thiết thay vì một Ngữ cảnh đầy đủ. Nó thêm vào số lượng các tham số, nhưng tôi đoán ít điều có thể đi sai. Một lần nữa xin cảm ơn. – RobertoCuba