Tôi đang tìm cách giảm những gì tôi gọi là "ô nhiễm id" trong ứng dụng của mình. Từ những gì tôi có thể nói, R.id
là toàn cầu đối với ứng dụng, vì vậy trong mỗi Hoạt động, tôi thường tạo các giá trị id tài nguyên duy nhất cho các phần tử, ngay cả khi tôi có nhiều thứ giống nhau. Ví dụ, nếu tôi có ba lớp Hoạt động, mỗi một tiết kiệm và hủy nút, tôi sẽ xác định sáu độc đáo của id cho R.id
như:Phạm vi giá trị R.id
R.id.actOne_save
R.id.actOne_cancel
R.id.actTwo_save
R.id.actTwo_cancel
R.id.actThree_save
R.id.actThree_cancel
Điều này có vẻ không cần thiết với tôi, như tôi nên thực sự chỉ cần hai chạy trên bất kỳ Hoạt động nào. Một số thực tiễn mà bạn sử dụng khi tạo id tài nguyên là gì? Bạn có sử dụng lại chúng giữa các hoạt động? Đó có phải là OK nếu một id tồn tại trên hai Activites (có thể một trong những bị tạm dừng và một foreground) cùng một lúc? Tôi sợ hành vi kỳ quặc như một nút bấm nhấn quá nhiều người nghe!
Cảm ơn, điều đó có ý nghĩa khi findViewById() được gọi từ một Hoạt động hoặc Chế độ xem, thay vì Ứng dụng. Chúc mừng! – Devunwired
Điều này chỉ đúng 50% vào lúc này bởi vì bạn có thể thấy trong trình soạn thảo R. từ các hoạt động ở nước ngoài, do đó bạn có thể nghĩ rằng một trong số đó là của bạn ngay cả khi nó không tồn tại trong hoạt động của bạn. – user250343
@Martyn, ý bạn chính xác là gì "trong cùng một chế độ xem"? Nếu tôi có bố cục hoạt động bao gồm 2 bố cục phân đoạn, mỗi đoạn bao gồm một 'id =" @ + id/button_ok ", đây có phải là vấn đề vì chúng chia sẻ cùng một chế độ xem gốc không? – bcorso