2011-07-11 32 views
7

Tôi có một hình ảnh bên trong một lần xem hình ảnh trong Android.Thay đổi kích thước IMAGEVIEW trên quy mô hình ảnh android

Tôi co giãn hình ảnh sử dụng scaletype (MATRIX) thông qua mã tương tự như sau:

     mtrx.postScale(scale, scale); 
       imageView.setImageMatrix(mtrx); 
      imageView.setScaleType(ScaleType.MATRIX); 
      imageView.invalidate(); 

Bây giờ, điều này không đúng cách thay đổi kích thước hình ảnh chứa trong ImageView, đó là tốt đẹp, nhưng những gì tôi cần là định vị lại hình ảnh thành vị trí 0,0 trong phần xem hình ảnh và sau đó thay đổi kích thước chính imageView thành kích thước của hình ảnh được chia tỷ lệ.

Cho đến giờ mọi ý tưởng tôi đã đưa ra để cố gắng sử dụng lại cùng một imageView dường như không hoạt động hoặc tôi chỉ đang làm điều gì đó sai.

Cách duy nhất để thực hiện điều này là hủy kích thước ảnh, thay đổi kích thước bitmap, tạo một ảnh mới có chứa bitmap mới được tạo ở quy mô và thêm chế độ xem lại bố cục?

Tôi thực sự muốn KHÔNG làm điều đó .. Tôi đang chạm phải giới hạn 16 meg heap như với mọi thứ. Làm thế nào để tôi nói ma trận di chuyển hình ảnh đến vị trí 0,0 trong imageView (imageView được tạo ban đầu với trung tâm scaletype, sau khi nó đã thu nhỏ hình ảnh nhỏ hơn? Và làm thế nào để tôi nói với imageView, hey bạn bây giờ chỉ ?. lớn như các hình ảnh thu nhỏ

Cảm ơn trước

Trả lời

8

Thiết xem hình ảnh của bạn để "Adjust Xem Bounds" dường như làm các trick

đây là những gì các tài liệu có thể nói:.

Đặt điều này thành true nếu bạn muốn ImageView điều chỉnh giới hạn của nó thành duy trì tỷ lệ khung hình có thể vẽ được.

Bạn có thể thực hiện việc này bằng cách sử dụng android:adjustViewBounds="true" hoặc bằng mã với imageView.setAdjustViewBounds(true).

+1

Nhưng nó không hoạt động bằng cách sử dụng scaleType fitStart. Ít nhất trong trường hợp này: Sau khi mở rộng quy mô có không gian dọc trống ở phía dưới. Không gian này không được điều chỉnh khi tôi đặt adjustViewBounds = "true" – Ixx

1

Đặt "Điều chỉnh giới hạn chế độ xem" đúng, sau đó đặt loại tỷ lệ thành "fitXY" cuối cùng sẽ điều chỉnh layout_width và chiều cao. Bạn sẽ thấy rằng hình ảnh thay đổi kích thước.

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