【问题标题】:Strecth Bitmap in ImageView在 ImageView 中拉伸位图
【发布时间】:2015-07-28 14:56:58
【问题描述】:

我有图像颜色,(161 * 96 = 15456)。

我将它保存在整数数组中,并创建一个位图:

conf = Bitmap.Config.ARGB_8888;
bm = Bitmap.createBitmap(161, 96, conf);

我在画布上逐点绘制并分配给bm(位图):

canvas.drawPoint(i, j, paint);
canvas.setBitmap(bm);

最后,我设置了 imageView :

imgPreview.setImageBitmap(bm);

效果很好,但我原来的 imageView 大小为 1200 * 900。 所以我想拉伸我的位图。但我不知道,我该怎么做,因为我是逐点绘制的。

有什么方法可以在图像视图中拉伸位图吗?

我有:

我想要:

【问题讨论】:

  • 尝试使用这个属性 imagePreview.setScaleType(ImageView.ScaleType.CENTER_CROP);
  • 刚做了,如果不适合你的需要,你也可以试试这个属性 ImageView.ScaleType.CENTER

标签: android bitmap


【解决方案1】:

您可以在 ImageView 中以编程方式使用 ScaleType

imagePreview.setScaleType(ImageView.ScaleType.CENTER_CROP);

【讨论】:

    【解决方案2】:

    您可以使用ImageViewsetScaleType(...) 方法。

    根据您的需要使用ImageView.ScaleType 中的FITCENTER_CROP 参数之一。

    编辑: 可能你想要FIT_CENTER

    【讨论】:

      【解决方案3】:

      在你的 imageview xml 标签中,使用下面的代码

      android:scaleType="centerCrop"
      

      【讨论】:

        【解决方案4】:

        您可以使用ImageView 属性android:scaleType。 http://developer.android.com/reference/android/widget/ImageView.html#attr_android:scaleType

        例如在你的 xml 中:

        <ImageView
         android:scaleType="fitXY"
         ...
        />
        

        【讨论】:

          【解决方案5】:

          将此代码添加到您的图像视图中

           <ImageView  android:scaleType="centerCrop"  ../>
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多