2012-08-12 60 views
2

我先存儲在內部存儲器中的圖像是這樣的:在ImageView中顯示存儲在內部存儲器中的圖像?我究竟做錯了什麼?

FileOutputStream fos = context.openFileOutput("myimage.png", Context.MODE_PRIVATE); 
bitmap.compress(CompressFormat.PNG, 100, fos); 
fos.close(); 

然後我在ImageView顯示這樣說:

File filepath = context.getFileStreamPath("myimage.png"); 
Uri uri = Uri.parse(filepath.toString()); 
myImageView.setImageUri(uri); 

但圖像不會出現在ImageView。由於某些限制,我不能在這裏使用setImageBitmap()。誰能告訴我我哪裏錯了?

感謝您的幫助!

回答

0

你可以嘗試以下方法:

相反的context.getFileStreamPath("myimage.png");你可以嘗試Uri uri = Uri.parse(getFilesDir().getPath() + "/myimage.png");

+0

嘗試過這種方法。仍然沒有圖像:( – 2012-08-12 14:21:35

+0

您是否在清單中添加了<使用權限android:name =「android.permission.WRITE_EXTERNAL_STORAGE」/>'? 位圖是如何聲明的? – FredFloete 2012-08-12 15:07:38

+0

WRITE_EXTERNAL_STORAGE不是必需的,因爲我使用內部用於讀/寫操作,對於位圖,我首先打開圖庫,然後當選擇圖像時,我使用BitmapFactory.decodeFile(),這部分工作正常,問題出在ImageView部分。 – 2012-08-12 15:31:02

-1
BitmapDrawable bitmapDrawable = new BitmapDrawable(getResources(), getFileStreamPath("myimage.png").getAbsolutePath()); 

imageView.setImageDrawable(bitmapDrawable); 

Bitmap b = BitmapFactory.decodeFile(getFileStreamPath("myimage.png").getAbsolutePath()); 
+0

Bitmap b = BitmapFactory.decodeFile(getFilesDir()。getAbsolutePath()+「/myimage.png」); – 2013-12-07 06:19:28

相關問題