2015-01-21 26 views
451

Tôi đang làm việc với Android Studio 1.1 Preview 1. Tôi nhận thấy rằng khi tôi tạo một dự án mới tôi nhận được hệ thống phân cấp như sau:Mipmaps vs thư mục drawable

Enter image description here

Mipmap thư mục cho Sở KHĐT khác nhau , không có các thư mục DPI khác nhau có thể kéo được.

Tôi có nên đặt tất cả tài nguyên của mình vào thư mục mipmap hay chỉ biểu tượng ứng dụng?

+4

Kiểm tra tuyên bố này từ liên kết trang blog của google dưới đây: - "... vì chúng được sử dụng ở độ phân giải khác với mật độ hiện tại của thiết bị. Ví dụ: biểu tượng ứng dụng xxxhdpi có thể được sử dụng trên trình khởi chạy cho xxhdpi thiết bị. " Điều này cho biết rằng một số thiết bị cố gắng sử dụng biểu tượng có mật độ khác nhau rõ ràng hơn là mật độ thiết bị hiện tại chỉ định. ví dụ. một số nhà sản xuất có thể muốn sử dụng các biểu tượng lớn hơn trong màn hình chính hơn màn hình trình khởi chạy hoặc các biểu tượng nhỏ hơn cho thông báo hơn thông số kỹ thuật thông thường. Do đó, chúng tôi phải xác định các tài nguyên đó và đặt chúng vào các thư mục mipmap. –

+1

Nhận xét trên chỉ là một giả định về những gì tôi hiểu và có thể sai. –

+0

Có khá nhiều thông tin hơn ở đây -> [mipmap drawables cho các biểu tượng] (http://stackoverflow.com/questions/23935810/mipmap-drawables-for-icons) –

Trả lời

672

Thư mục mipmap là để đặt biểu tượng ứng dụng/trình khởi chạy (chỉ hiển thị trên màn hình chính). Bất kỳ tài sản có thể vẽ nào khác mà bạn sử dụng phải được đặt trong các thư mục có thể vẽ tương ứng như trước đây.

Theo this Google blogpost:

Đó là thực hành tốt nhất để đặt các biểu tượng ứng dụng của bạn trong mipmap- thư mục (không phải là thư mục drawable-) vì chúng được sử dụng ở độ phân giải khác nhau từ mật độ hiện tại của thiết bị.

Khi tham khảo mipmap- thư mục đảm bảo bạn đang sử dụng tài liệu tham khảo sau đây:

android:icon="@mipmap/ic_launcher" 

Lý do họ sử dụng một mật độ khác nhau là một số bệ phóng thực sự hiển thị các biểu tượng lớn hơn họ đã dự định. Bởi vì điều này, họ sử dụng kích thước tiếp theo lên.

+132

Để làm rõ, "biểu tượng ứng dụng" trong phần được trích dẫn đề cập đến biểu tượng trình khởi chạy, không nhất thiết phải là các biểu tượng khác. – CommonsWare

+33

"vì chúng được sử dụng ở độ phân giải khác với mật độ hiện tại của thiết bị" điều này có nghĩa là gì? Đó là một trong những cụm từ khó hiểu nhất trong bản phát hành này. – southerton

+5

Khi bạn đang sử dụng chúng trong mã của bạn, hãy đảm bảo bạn đang sử dụng (R.mipmap.icon_name) không (R.drawable.icon_name). –

Các vấn đề liên quan