Đồng nghiệp của tôi và tôi đã phát triển hai ứng dụng song song, mỗi ứng dụng có kiểu dáng tương tự nhau. Nền xem chính của các ứng dụng này là một gradient xuyên tâm. Ông đã thực hiện hình ảnh của mình như một hình ảnh chín vá và tôi đã làm nó với một hình dạng có thể vẽ được. Cả hai tạo ra kết quả tương tự và có thể chấp nhận được.Bản vá có thể vẽ được với hình dạng có thể vẽ được. Điều gì nên được ưa thích?
Câu hỏi của tôi là, chúng ta nên sử dụng câu hỏi nào? Có sự cân bằng giữa mức tiêu thụ bộ nhớ và hiệu suất không? Tôi hình dung rằng hình ảnh có thể mất thời gian để tải, nhưng hình dạng đó có thể vẽ được nhiều thời gian hơn để vẽ (do tính toán). Những cái này sau đó được lưu trữ trong bộ nhớ cache và những hình phạt chỉ xảy ra lần đầu tiên chúng được hiển thị hoặc là những vấn đề này đang diễn ra ???
Shape drawable:
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<gradient
android:startColor="#003472"
android:endColor="#000034"
android:gradientRadius="350"
android:type="radial"/>
</shape>
Chín Patch:
Đó là tiêu chí tốt cho chất lượng của kết quả. Tuy nhiên, những gì về hiệu suất và tiêu thụ bộ nhớ trong trường hợp của chúng tôi. Ví dụ, hình ảnh khoảng 30K. Nếu chúng ta sử dụng nó làm nền cho một số Activies, nó sẽ tiêu thụ nhiều bộ nhớ hơn hình dạng có thể vẽ được không? – jsmith
@jsmith Hiệu suất: 10-20 ms không nên là một vấn đề, vì vậy tôi sẽ nói không có sự khác biệt. Tiêu thụ bộ nhớ: vì cả hai đều được tái tạo trong thời gian chạy, bộ nhớ tiêu thụ của chúng cũng giống nhau. (Xem xét cả hai sẽ là bitmap dữ liệu với kích thước nhất định ở cuối) –