Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
625 views
in Technique[技术] by (71.8m points)

android - How to load an ImageView from a png file?

I take a picture with the camera using

Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE );
startActivityForResult( intent, 22 );

When the activity completes, I write the bitmap picture out to a PNG file.

    java.io.FileOutputStream out = openFileOutput("myfile.png", Context.MODE_PRIVATE);
    bmp.compress(Bitmap.CompressFormat.PNG, 90, out);

That goes OK, and I can see the file is created in my app private data space.

I'm having difficulty when I later want to display that image using an ImageView.

Can anyone suggest code to do this?

If I try to create a File with path separators in, it fails. If I try to create a Uri from a name without separators, that fails.

I can open the file OK using:

        java.io.FileInputStream in = openFileInput("myfile.png");

But that doesn't give me the Uri I need to set an image with

   iv.setImageURI(u)

Summary: I have the picture in a png file in private app data. What's the code to set that into an ImageView?

Thanks.

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

Try BitmapFactory.decodeFile() and then setImageBitmap() on the ImageView.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...