【发布时间】:2014-09-01 10:52:58
【问题描述】:
我是安卓开发的新手。我的应用程序中的图像缩放存在问题。当我使用 setImageDrawable() 设置图像时,图像看起来像在屏幕截图中一样:
但如果我使用 setImageBitmap() 方法设置图像,它看起来不正确。它周围出现一些黑色,如下图所示:
我已经在多个应用程序中尝试过,我观察到在某些应用程序中,图像尺寸变得小于通过setImageDrawable() 或setImageResource() 设置图像的尺寸。
通过setImageBitmap() 设置图像的原因是我想将图像设置为保存在资产文件夹中而不是可绘制的图像视图。
以下是我用来创建位图并将其设置为 imageview 的代码:
BitmapFactory.Options opts = new Options();
opts.inPurgeable = true;
try
{
Bitmap preview_bitmap = BitmapFactory.decodeStream(assetManager.open(drawableFolder+"/"+tmpArr[0]),null,opts);
view.setImageBitmap(preview_bitmap);
}
catch (Exception e)
{
LNLog.writeTOErrorToLog(e.getMessage());
}
所以,任何人都可以告诉我我哪里出错或缺少要设置的东西。
我试图设置选项但没有奏效。我想将图像设置为使用setImageDrawable() 在第一个屏幕截图中的外观。
提前谢谢。
注意:在屏幕截图中,图像仅在文本中引用。如果我设置印地语图像,即使用 setImageDrawable() 设置印地语文本的图像,那么它们看起来就像在屏幕截图中一样。所以,不图片文件问题。
【问题讨论】:
-
现在查看 ImageView.java 源代码并查看 setImageBitmap 方法 github.com/android/platform_frameworks_base/blob/master/core/… 第 436 行
标签: android bitmapfactory