2014-01-29 101 views
0
Intent i = getIntent(); 
    mPathString = i.getStringExtra("imagepathstring"); 
    Toast.makeText(getApplicationContext(), mPathString, Toast.LENGTH_LONG).show(); 

    try { 
     Bitmap temp = BitmapFactory.decodeFile(mPathString); 
     capturedImageView.setImageBitmap(temp); 
    } catch (Exception e) { 
     // TODO: handle exception 
    } 

這裏的代碼運行完美,即使是吐司顯示我正在存儲在外部存儲的圖像的正確路徑。但該圖像仍未出現在圖像視圖上。如果我刪除try和catch塊周圍的位圖對象,那麼我的應用程序將失敗,並出現nullpointer異常。任何人都可以幫助弄清楚我做了什麼錯誤..? 謝謝無法在imageview中顯示存儲的圖像?

回答

2

檢查是否已初始化你capturedImageView。我認爲你的capturedImageViewnull

+0

+1是啊......你幾乎肯定是對的。如果路徑不正確,則位圖將爲空,但將空位圖傳遞給setImageBitmap完全合法。所以,問題幾乎可以肯定的是,captureImageView從未初始化爲指向有效的視圖。 –

0
mPathString = i.getExtra.getString("imagepathstring"); 
0

您使用的路徑是什麼,以及您如何生成它?它可能不完全正確。

啊,羅馬黑也許是對的。

+0

其他一切都是正確的,生成路徑和圖像存儲。謝謝。 –

2

請使用layout imageview設置您的capturedImageView。 我認爲那麼它工作正常。

ImageView capturedImageView; 
capturedImageView=(ImageView)findViewById(R.id.capturedImageView); 
+0

這工作....在我身邊的一個愚蠢的錯誤....道歉...非常感謝,因爲我自己從來沒有找出這個愚蠢的錯誤。再次感謝你。 –

+0

是的,我知道它有時會發生。在try catch塊中它處理它,你的應用程序工作正常,但是當你刪除它時,你的應用程序會由於例外情況而崩潰 – user2323471

相關問題