2012-08-31 139 views
0

感谢这个网站,我成功实现了ImageViews的水平ListView。 现在我需要的是列表中的ImageViews有一个固定的高度(他们是一个更复杂的布局的一部分,所以我使用LinearLayout重量技巧,使其高度等于屏幕的1/3高度),以及相对于高度进行调整而不破坏纵横比的宽度。图像的高度比宽度更长 - 与纵向手机类似的纵横比。ImageView静态高度,动态宽度

现在我已经尝试将scaleType设置为不同的可用设置,并将adjustViewBounds设置为true,并将layout_width设置为wrap_content并将layout_height设置为fill_parent。最近我在做它是这样的:

http://img849.imageshack.us/img849/1289/device20120831133004.png (我把白色边框作为图像背景)

还有什么可以做什么?

回答

0

问题在于您的ImageView无法调整到所需的高度,因为它的纵横比与屏幕不同。您的与屏幕高度匹配的视图(或1/3的宽度)和宽度无法按比例缩放,无裁剪。

尝试将scaleType设置为centerCrop并将图像加载到调整到所需高度。

+0

图像与屏幕的纵横比应该不重要,我只是举了一个例子来让它更容易形象化。我想要的是ImageView调整其高度以填充分配的空间,并调整图像所需的宽度,以填充ImageView而不裁剪或在侧面/顶部和底部具有未使用的空间。 – josephus

+0

@JosephusVillarey看起来像你真正想要的是该图像将填补父母**的宽度**。因为没有简单的方法来“在一个案例中填充高度而不填充另一个案例”。 –

+0

实际上,我想要的是相反的 - 我希望ImageView的宽度可以在图像周围“包裹”,同时填充父母的身高。 – josephus