2010-03-09 34 views
8

Tài liệu Android nói rằng các phương pháp hay nhất là tạo hai thư mục có thể kéo - một cho HDPI và một cho MDPI. Nó cũng nói rằng nếu thư mục MDPI không tồn tại và một thiết bị MDPI đang chạy ứng dụng, nó sẽ giảm tỷ lệ các HDPI để mọi thứ có vẻ tốt.Có bất kỳ bất lợi nào khi chỉ sử dụng các tài nguyên hình ảnh có độ phân giải cao cho một ứng dụng Android không?

Có lý do nào để không chỉ tạo một bộ đồ họa có độ phân giải cao không?

Một con người mà tôi có thể nghĩ đến là các vấn đề về hiệu suất và một chuyên gia mà tôi có thể nghĩ là chỉ có một bộ hình ảnh cho ứng dụng của bạn.

+0

Đừng quên ldpi! –

Trả lời

6

Về cơ bản, tình hình với điều này có thể được ngoại suy cho hầu hết các thực hành tốt nhất:

Bạn có thể làm điều đó bằng cách khác, nhưng thường nhất mà không, bạn không nên.

Nó không phải là bạn không thể đi chỉ với drawable-hdpi, nhưng việc thêm drawable-ldpidrawable-mdpi cung cấp cho bạn khả năng tùy chỉnh và tinh chỉnh tài sản của bạn, với mức giá tăng lên một chút ứng dụng của bạn.

Xin vui lòng, hãy ghi nhớ rằng bulking này lên sẽ không được như vậy ấn tượng - nếu bạn cho rằng:

  • kích thước tài nguyên tỷ lệ với số điểm ảnh
  • sự khác nhau giữa tài sản cho độ phân giải khác nhau là tỷ lệ thuận với sự khác biệt giữa các nghị quyết

thư mục drawable-mdpi sẽ chỉ là 37% drawable-hdpidrawable-ldpi sẽ chỉ là 18% drawable-hdpi

Ngoài ra hậu tố cho thư mục res đặc biệt hữu ích khi được sử dụng cùng nhau - bạn có toàn quyền kiểm soát ứng dụng. Trong một số trường hợp, tài nguyên được xác định trước nhiều hơn so với màn hình mật độ cao trung bình thấp, vì vậy tôi sẽ nói rằng bạn không nên lo lắng nhiều cho số lượng lớn bổ sung.

Như bạn đã nghĩ, bạn có thể tránh việc mở rộng quy mô tài nguyên động (tồi tệ hơn so với chia tỷ lệ trước). Nó sẽ không phải là một vấn đề, nhưng hầu hết thời gian, nếu bạn có thể tránh các hoạt động trên thiết bị bằng cách thực hiện các chế phẩm bổ sung trong quá trình phát triển/sản xuất, đó là một điều tốt.

+3

Có, không có lý do gì để không chuẩn bị hầu hết tài sản của bạn cho mọi kích cỡ. Cũng lưu ý rằng một số nội dung như biểu tượng ứng dụng * sẽ * chắc chắn trông xấu (mờ) khi thu nhỏ từ hdpi xuống màn hình mdpi hoặc ldpi. –

+0

Cảm ơn, tôi thậm chí không cân nhắc thực tế rằng kích thước tài nguyên nhỏ hơn nhiều ở mật độ thấp hơn. Tôi muốn ứng dụng của tôi trông giống hệt nhau trên tất cả các thiết bị (hiện tại), vì vậy tôi nghĩ chỉ sử dụng drawable-hdpi là ok cho tôi miễn là tôi không thấy quá nhiều sự xuống cấp về hiệu năng. –

+0

@Christopher - Tôi sẽ ghi nhớ điều đó cho biểu tượng ứng dụng. Tôi đoán tôi sẽ phải thử nghiệm đồ họa trong ứng dụng. –

1

Nhược điểm lớn duy nhất của việc sử dụng hdpi (90% chúng tôi không làm việc trong các nhóm lớn với nhà thiết kế được thiết kế chỉ có thể lo lắng về/res thư mục trong dự án) được tăng cpu & (quan trọng hơn) sử dụng bộ nhớ . I E. - Bạn có thiết bị 320x480 tải và sử dụng hình ảnh 1000x1000 (chúng được thu nhỏ trên màn hình, nhưng chúng sử dụng cùng một bộ nhớ như thể chúng được hiển thị ở kích thước đầy đủ).

May mắn, tôi chỉ tìm thấy viên ngọc này nhỏ mà hoạt động khá tốt - nó autogenerates kích thước khác từ hình ảnh của bạn trong xhdpi:

https://code.google.com/p/android-drawable-converter/

Thậm chí tốt hơn - đó là cấu hình để bạn có thể thêm kích thước mới (xxhdpi) hoặc chỉ tạo một số loại (mdpi).

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