2012-01-16 100 views
0

我創建其中第一個活動調用第二個活動的結果,即startActivityForResult(intent,SELECT_FILE);的應用程序,但是,將第二項活動,如果我按我的仿真器的後退按鈕,它拋出一個異常:異常在按下仿真器的後退按鈕的Android

java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=1, result=0, data=null} to activity {com.upload/com.upload.FileUploadActivity}: java.lang.NullPointerException

我該怎麼辦..?

Thankx

+0

從您的FileUploadActivity粘貼更多代碼,在其中設置結果 – 2012-01-16 14:14:24

回答

0

當你開始使用startActivityForResult結果的新的活動時,新的活動結束的預期。通常新活動結束,結果在finish()方法中定義。

我懷疑發生了什麼是您不處理新活動中的後退按鈕,因此不會生成任何結果。然後當'onActivityResult()is called in the old activity there is no activity to process and you are getting the NullPointerException`。

您可以通過以下兩種方法解決這一問題。

在新的活動中按下後退按鈕並按下時,請撥finish()來設置結果。或者在舊的活動中檢查結果以確保它是有效的並且不爲空(無論如何,您應該真的這麼做)