nodpi
Đây là những nguồn tài nguyên mật độ độc lập. Hệ thống không quy mô tài nguyên được gắn thẻ với vòng loại này, bất kể mật độ của màn hình hiện tại.
Ví dụ:
Dấu chấm sẽ xuất hiện nhỏ trên xxhdpi, lớn trên ldpi.
Tuy nhiên, trình phân giải tài nguyên sẽ khớp với một vòng loại cụ thể nếu nó tồn tại.
Ví dụ
- drawable- hdpi /eg.png
- drawable- nodpi -v21/eg.xml
Trên một Lollipop (API 21) Thiết bị hdpi , bitmap được sử dụng.
Trên thiết bị xSLpi Lollipop (API 21), véc tơ được sử dụng.
anydpi
Các tài nguyên này được ưu tiên trong bất kỳ dpi nào.
Ví dụ
- drawable- hdpi /eg.png
- drawable- anydpi -v21/ví dụ.xml
Trên thiết bị hdpi Lollipop (API 21), vector được sử dụng.
Trên thiết bị xSLpi Lollipop (API 21), véc tơ được sử dụng.
Phản hồi ban đầu
Dưới đây là những gì tôi hiểu ban đầu từ mô tả thay đổi, nhưng đó không phải là cách thiết bị của tôi hoạt động. Điều này có thể đúng cho các công cụ SDK cũ hơn.
nodpi
Không làm việc như dự định: Tuy nhiên, nodpi không được ưu tiên. Ví dụ, nếu bạn có
- drawable- mdpi /eg.png
- drawable- hdpi /eg.png
- drawable- nodpi /eg.xml
Sau đó,
- Bật mdpi, khung công tác sẽ lấy bitmap mdpi.
- Trên xxxdpi, khung sẽ chụp ảnh bitmap hdpi.
Giải pháp cho vector drawables: Nếu bạn muốn sử dụng một drawable vector, sau đó bạn phải tàu:
- drawable- mdpi /eg.png
- drawable- mdpi /eg.xml
- drawable- hdpi /eg.png
- drawable- hdpi /eg.xml
anydpi
gia tăng với change Ic3288d0236fe0bff20bb1599aba2582c25b0db32 các "anydpi" vòng loại tài nguyên được chọn theo khuôn khổ nếu một dpi chính xác không được tìm thấy bằng cách khác.
Điều này rất lớn đối với bất kỳ ai sử dụng các đối tượng vẽ vector.
Bây giờ, nếu bạn có
- drawable- mdpi /eg.png
- drawable- hdpi/ví dụ.png
- drawable- anydpi /eg.xml
Sau đó
- Trên một mdpi, khung sẽ mất bitmap mdpi.
- Trên xxxdpi, khung sẽ lấy vectơ.
[Đọc tóm tắt riêng của OP tại đây.] (Https://commonsware.com/blog/2015/12/21/nodpi-anydpi-wtf.html) – Suragch