2010-10-23 29 views
6

Tôi có một trò chơi bài giản dị trong đó người dùng có thể kéo và thả thẻ xung quanh màn hình. Trên một số điện thoại Android 2.2 như Droid và EVO, bản vẽ thẻ rất chậm. Điều này là lạ bởi vì nó xảy ra trên một số điện thoại nhanh hơn. Tuy nhiên nó không phải tất cả các điện thoại tôi thử nghiệm trên Droid và Droid X và chương trình chạy rất tốt cũng chạy tốt trên điện thoại chậm hơn như G1. Tôi bắt đầu nhận được báo cáo về điều này sau khi Motorolla phát hành bản cập nhật 2.2 cho Droid.Tại sao bản vẽ bitmap lại rất chậm trên một số điện thoại Android 2.2?

Đây là bản sửa lỗi tôi đã đưa ra nhưng nó thực sự làm giảm chất lượng đồ họa của tôi. Gradients trông khủng khiếp.

tôi đã thay đổi này

Bitmap.createBitmap(newBmp.getWidth(), newBmp.getHeight(), Bitmap.Config.ARGB_8888); 

này

Bitmap.createBitmap(newBmp.getWidth(), newBmp.getHeight(), Bitmap.Config.ARGB_4444); 

Vấn đề sẽ biến mất nhưng vẻ đau khổ. Tôi cần phải giữ kênh alpha vì vậy tôi không thể sử dụng RGB_565. Có cách nào để giữ hình ảnh chất lượng của tôi và không làm cho nó chạy quá chậm?

+0

Tôi không biết về phát triển Android, nhưng có thể là một số thiết bị sử dụng định dạng bitmap gốc khác không? Tôi sẽ cố gắng sử dụng định dạng có nguồn gốc từ thiết bị và hy vọng đây sẽ là định dạng nhanh nhất. – Lucero

+0

Tôi đang sử dụng tệp png. Điều kỳ lạ là nó sẽ chạy tốt trên một Droid với 2,1 nhưng chậm trên một số điện thoại Droid với 2,2. Tôi nghĩ rằng đây có thể là một lỗi nhưng tôi vẫn cần một công việc tốt. – theJosh

+1

Các thẻ này lớn đến mức nào? Ngoài ra, bạn lấy bitmap từ đâu? Bạn có sử dụng chúng làm bộ đệm ngoài màn hình không? Độ phân giải là gì? –

Trả lời

0

Có thể đây là một số lớn Bitmaps mà bạn đang cố xử lý. Hãy xem đào tạo android này Loading Large Bitmaps Efficiently.

Tôi nghĩ điều này có thể giúp hiệu suất của bạn và tạo bitmap tải không chặn luồng giao diện người dùng chính.

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