2012-05-10 29 views
6

Tôi đang thử nghiệm trên HTC Desire là thiết bị hdpi. Vấn đề là rõ ràng khi bạn nhìn vào hình ảnh:9-patch - Đường viền 1px bị mờ

9-patch - 1px border is blurred

Và đây là cách 9 vá của tôi (thực hiện với công cụ 9-patch chuẩn) ngoại hình (thu nhỏ):

9-patch - 1px border is blurred

Hình ảnh bên trái là tệp photoshop của tôi và hình ảnh bên phải là ảnh chụp màn hình từ thiết bị của tôi. Như bạn có thể thấy có một sự khác biệt rất lớn. Giả sử bóng tối không quan trọng, nhưng đường viền mờ trông xấu.

Png 9 bản vá của tôi có sai không? Tôi có thể làm gì để đạt được đường viền rắn 1px sắc nét đẹp?

+1

Bạn phải làm điều gì đó khi bạn sử dụng công cụ 9 đường dẫn. Bạn có đang sử dụng công cụ 9 đường dẫn cho mỗi png trong thư mục có thể vẽ khác nhau không? – goodm

+0

Bản vá 9 có tên chính xác là filename.9.png không? – ligi

+1

thay vì dòng chỉ cần đặt một dấu chấm trong bốn mặt của hình ảnh của bạn trong draw9patch. nó sẽ hoạt động. –

Trả lời

8

Bạn nên sử dụng công cụ 9 đường dẫn cho mỗi png trong thư mục có thể kéo khác nhau. Đôi khi vấn đề là điều này Android cố gắng để chuyển đổi png và làm mờ các đường màu đen, những gì gây ra vấn đề sau này với hiển thị đúng.

+2

+1 na zdrowie :) –

3

Để tránh sự cố này, chỉ cần thả bản vá 9 bên trong thư mục drawable-no-dpi. Điều này cho phép có một hình ảnh cho tất cả mật độ. Và Android sẽ không chạm vào hình ảnh.

Đây chủ yếu là những gì tôi làm cho dự án của mình, trừ khi tôi thực sự muốn có sự khác biệt giữa mật độ. Trong trường hợp đó, tôi tạo ra một bản vá 9 cho mỗi mật độ.

+0

Vâng, đó là giải pháp nếu bạn không đặt mọi drawable trong dpi khác nhau (như bạn có thể thấy trong các ý kiến ​​cũ) . –

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