Android ImageView不显示图像

时间:2015-09-05 13:55:04

标签: android bitmap imageview

我已经高低搜索了答案,但我完全被这里难过了。

我有一个我在XML布局中创建的ImageView。

<ImageView
    android:id="@+id/imgProfilePicture"

    android:layout_width="@dimen/image_size"
    android:layout_height="@dimen/image_size"
    android:layout_margin="5dp"

    android:layout_alignParentTop="true"
    android:layout_alignParentLeft="true"

    android:scaleType="fitXY"
/>

当我的应用运行时,我通过异步任务下载Facebook个人资料图像,并将图像存储在设备的内部存储器中供以后使用。创建活动后,我将内部存储器中的图片作为位图抓取,并使用适当的缩放设置图像视图位图(请注意,我为自己的用途制作了自定义LoggerFileHandler):

Logger.WriteLog(mClassName, subMethodName, "Setting User Profile Image");

FileHandler fileHandler = new FileHandler(getApplicationContext());
Bitmap bitmap = fileHandler.LoadPicture("UserProfileImage");
imgProfilePicture.setImageBitmap(Bitmap.createScaledBitmap(bitmap, imgProfilePicture.getLayoutParams().width, imgProfilePicture.getLayoutParams().height, false));

我可以稍后验证图片是否存在:

if (imgProfilePicture.getDrawable() == null)
{
    Logger.WriteLog(mClassName, mMethodName,"No drawable present..." );
}
else
{
    Logger.WriteLog(mClassName, mMethodName,"Drawable present..." );
    Bitmap bitmap = ((BitmapDrawable)imgProfilePicture.getDrawable()).getBitmap();

    Logger.WriteLog(mClassName, mMethodName,"Bitmap string = " + bitmap.toString());
}

当我运行调试器并在最后Logger.WriteLog设置断点时,我能够&#34;查看位图&#34;在调试器控制台中。我没有足够的声誉发布图片,但相信我,它就在那里。我还可以通过Logger.WriteLog(mClassName, mMethodName,"Bitmap string = " + bitmap.toString());行在logcat中看到位图的ID。

问题是,当我查看用户界面时,图片不存在。

我知道图像放置正确,因为如果我在XML文件中硬编码一个虚拟drawable,它就会显示正常。

有什么想法吗?

0 个答案:

没有答案