【问题标题】:ImageView static height, dynamic widthImageView 静态高度,动态宽度
【发布时间】:2012-08-31 05:39:08
【问题描述】:

感谢这个网站,我成功实现了一个ImageViews的Horizo​​ntal ListView。 现在我需要的是列表中的 ImageViews 有一个固定的高度(它们是更复杂布局的一部分,所以我使用 LinearLayout 权重技巧给它一个等于屏幕高度 1/3 的高度),以及在不破坏纵横比的情况下相对于高度进行调整的宽度。图像的高度大于宽度 - 纵横比类似于纵向的手机。

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

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

还能做什么?

【问题讨论】:

    标签: android imageview


    【解决方案1】:

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

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

    【讨论】:

    • 图像与屏幕的纵横比无关紧要,我只是将其作为示例以使可视化更容易。我想要的是 ImageView 调整其高度以填充分配的空间,并根据图像需要调整宽度以填充 ImageView 而不会裁剪或在侧面/顶部和底部有未使用的空间。
    • @JosephusVillarey 看起来您真正想要的是图像将填充父级的 宽度。因为没有简单的方法可以“在一种情况下填充高度而不在另一种情况下填充”。
    • 实际上我想要相反的 - 我希望 ImageView 的宽度“环绕”图像适合,同时填充父级的高度。
    • @JosephusVillarey 您需要将图像放入 ImageView 中,以便它有一些固定的高度和宽度将按比例缩放以适应可用空间,而无需裁剪或留出空白空间。我说的对吗?
    • @JosephusVillarey 不幸的是,我仍然不明白它是怎么可能的 :) 如果你的 ImageView 是 100x200 并且你的图像是 400x200,你将如何缩放(让我们现在不要考虑编程,只是理论)吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-05
    • 1970-01-01
    • 1970-01-01
    • 2015-09-22
    • 1970-01-01
    • 2019-03-09
    相关资源
    最近更新 更多