2012-04-12 33 views
18

Mọi thứ trông khá đơn giản trước nhưng cuối cùng kết quả không tốt. Tôi có hình ảnh có chiều rộng lớn hơn chiều rộng của màn hình. Vì vậy, tôi cần phải giảm tỷ lệ xuống trong số lần xem hình của tôi. Tôi nhìn qua các tùy chọn ScaleType và thử tất cả nhưng không có gì là ok. Đầu tiên "center" chỉ hiển thị hình ảnh tập trung vào bố cục, không chia tỷ lệ. "fitCenter" chia tỷ lệ cho vừa với bố cục của tôi nhưng có một nhược điểm lớn: chiều cao của mục vẫn giữ nguyên vì nó sẽ có hình ảnh lớn trong đó. Hãy nhìn vào màn hình thứ hai trong hình ảnh đính kèm. Làm thế nào tôi có thể buộc mục danh sách, để giảm chiều cao của nó để bọc cả văn bản và hình ảnh?Chế độ xem hình ảnh Android và chiều cao mục

enter image description here

+0

bạn có làm nó hoạt động không? – Shubhayu

Trả lời

45

Sử dụng scaletype mà có vẻ tốt nhất cho bạn (tôi đoán bạn thích những gì bạn nhìn thấy với fitCenter). Điều bổ sung mà bạn phải làm là

android: adjustViewBounds = "true"

trong ImageView của bạn.

hoặc bạn có thể đi với FitXY nhưng đôi khi kết quả không chính xác những gì bạn muốn.

+0

Vâng, đây là tài sản bị thiếu. Làm việc tốt với adjustViewBounds và fitCenter – Alin

+0

Tôi có hình ảnh 1000 * 800 nhưng tôi không thể có được ImageView đầy đủ bằng cách sử dụng bất kỳ thuộc tính nào .. nếu có bất kỳ sự kết hợp nào nằm trong đó. xin hãy giúp tôi ra –

+0

Sẽ cần thêm thông tin, như liệu số lần xem hình ảnh có nằm trong bố cục nhỏ hơn kích thước hình ảnh của bạn không và hình ảnh được đặt như thế nào. – Shubhayu

2

Bạn có thể sử dụng FitXY không? Điều này sẽ hoạt động nếu bạn biết kích thước của khu vực bạn đã đưa hình ảnh vào. CentreInside cũng có thể hoạt động, tôi đã sử dụng tính năng này để giảm kích thước hình ảnh, nhưng tôi nghĩ điều đó phụ thuộc nếu bạn đã kiểm soát kích thước của phần tử bố cục giới hạn.

3

sử dụng android:scaleType="fitXY"

0

Bạn cần đặt android: height = "wrap_content" trên vùng chứa bên ngoài hoặc đặt chiều cao tĩnh của TextBox và cung cấp cho ImageView android: weight = "1" để ImageView chiếm không gian còn lại trong vùng chứa.

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