【问题标题】:android : scaling bitmap to fit imageviewandroid:缩放位图以适合 imageview
【发布时间】:2014-07-02 13:39:41
【问题描述】:

我正在从画廊/相机中获取位图并尝试适应大小为 200 dp * 200dp 的图像视图

我不得不缩放位图以解决内存不足的问题。现在缩放后的图像不完全适合 imageview。

宽度很好,但高度只有一半。有没有办法在不改变 imageview 大小和不拉伸图像的情况下使位图适合 imageview。

fitxy 可以,但图像会被拉伸。 我关注了this answer

【问题讨论】:

  • 尝试将 scaleType 设置为 centercrop。
  • 将图像设置为固定的宽度和高度将始终影响纵横比。您可以设置宽度或高度以保持纵横比。

标签: android bitmap scale


【解决方案1】:

我认为您需要创建新的位图以适应 ImageView 的大小,并且您必须按比例创建新的位图,就像它是什么高度一样,宽度必须与高度的比例相同,然后您需要在那里设置该位图。另一种方式是给予,

android:adjustViewBounds="true"

它会自动按比例缩放图像。

【讨论】:

  • 你有没有新建btmap?
【解决方案2】:

如果您正在寻找使用 xml 的解决方案,我创建了一个选择器并将我的 imageView 背景分配给它:

android:background="@drawable/image_selector"

在我的选择器中,我设置了一个位图项目并将其重力设置为"fill"

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

   <item>
       <bitmap android:gravity="fill"
               android:src="@drawable/kitchen_background"/>
   </item>


</selector>

【讨论】:

    猜你喜欢
    • 2011-10-11
    • 2021-04-07
    • 2011-12-28
    • 2011-09-03
    • 2021-11-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多