gpt4 book ai didi

android - 当 setImageBitmap() 设置时,ImageView 不会显示图像

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:17:23 27 4
gpt4 key购买 nike

我在显示 SD 卡上的现有图像时遇到问题。

ImageView _photoView = (ImageView)findViewById(R.id.img_photo);

File photoFile = new File(Environment.getExternalStorageDirectory(), Session.PHOTO_FILE_NAME);
rawFileInputStream = new FileInputStream(photoFile);
Bitmap origPhoto = BitmapFactory.decodeStream(rawFileInputStream, null, new BitmapFactory.Options());

_photoView.setImageBitmap(origPhoto);
Log.d(TAG, origPhoto.getWidth() + " - " + origPhoto.getHeight());

照片确实存在并且尺寸显示如显示的那样,但 ImageView 标签中没有显示任何内容

<ImageView 
android:id="@+id/img_photo"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />

我尝试将高度设置为固定大小,但还是看不到照片。

我在 SO 上看到了一些关于这个问题的帖子,但还没有人回答。

有什么想法吗?

** 更新如果我直接加载文件,而不是通过文件流,它就可以工作

Bitmap origPhoto = BitmapFactory.decodeFile("/mnt/sdcard/" + Session.PHOTO_FILE_NAME);
double scale = MAX_WIDTH * 1.0 / origPhoto.getWidth();
int height = (int)(origPhoto.getHeight() * scale);
Bitmap scaledPhoto = Bitmap.createScaledBitmap(origPhoto, MAX_WIDTH, height, true);
_photoView.setImageBitmap(origPhoto);

但如果我随后添加 Bitmap.createScaledBitmap() 方法调用,它就不再有效并且图像不会显示。

最佳答案

我将文件流替换为 Bitmap scaledPhoto = BitmapFactory.decodeFile("/mnt/sdcard/"+ Session.PHOTO_FILE_NAME);现在可以使用了(更新中提到的内容)

关于android - 当 setImageBitmap() 设置时,ImageView 不会显示图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6538843/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com