2016-10-25 21 views
7

Nếu tôi tạo ra một thư viện và thêm bình thường drawable int drawable-xxhdpi, sau đó thêm tập tin có cùng tên tại Reasource ứng dụng app.the của Resource sẽ thay thế tài nguyên của thư viện, giống như:Library Android về Resource override

enter image description here

Nhưng nếu tôi sử dụng tài nguyên svg, Nó sẽ không thay thế của tài nguyên, như thư viện:

enter image description here

Làm thế nào để thay thế drawable vector?

+0

Tôi có thể sai, nhưng theo pic thứ hai của bạn, bạn đang cố gắng tạo ra không có trong "drawable xxhdpi" và xem xét pic đầu tiên thư mục ở trên nó là "drawable" do đó nó được hiển thị trong thư mục drawable sau khi được xây dựng –

+0

"ic_picture_loading.xml" tất cả trong thư mục "drawable". chỉ là hình ảnh là khó để hiển thị –

+0

Bạn đã đặt ic_picture_loading.xml trong drawable-xxhdpi và kiểm tra? –

Trả lời

5

Trong khi xây dựng, các bản vẽ vector từ thư viện được đặt trong thư mục drawable-anydpi-v21.

Vì điều này sẽ có tiền lệ trên tất cả các thiết bị v21 +, bạn cần phải di chuyển ứng dụng của bạn có thể drawable vào cùng một thư mục nếu bạn muốn nó ghi đè tài nguyên thư viện.

Đối với tiền v21, bạn cần đặt vectorDrawables.useSupportLibrary = true trên thư viện và ứng dụng và đặt véc tơ có thể vẽ trong thư mục drawable.

+0

nhưng nó chỉ hữu ích cho v21, làm thế nào để hỗ trợ pre-v21? Tôi thấy thư mục build/res/merged 'drawable-v4' là thư viện ảnh. –

+0

Và thư viện sẽ tự động tạo bản vẽ vector để drawable-v4, nhưng tại sao ứng dụng sẽ không? –

+0

Đối với pre-v21, bạn cần đặt 'vectorDrawables.useSupportLibrary = true' trên thư viện và ứng dụng và đặt vector có thể vẽ trong thư mục ** drawable **. – tachyonflux