2010-10-19 47 views
3

我想澄清intent.this是我的場景,有3個活動在我的項目中,即「A」,「B」,「C」 ..... 單擊按鈕活動「A」,我通過捆綁傳遞值爲「B」,並基於接收到的值我從數據庫中檢索到的一組值...類似地「B」「C」也...意圖在Android上

當我點擊的返回按鈕「C」它不進入「B」而噸的問題hrows一個error.similarly 「B」 到「A」也....

我找到了原因,從 「C」 點擊後退按鈕時, 「B」 無法擺脫束值

希望你understand.what就是解決方案....提前

感謝

+0

除此之外,告訴我們在按回時拋出什麼錯誤是非常有用的。 – Felix 2010-10-19 14:43:53

+0

空指針異常.... – Kakey 2010-10-19 15:10:29

+0

它很明顯會拋出空指針異常,因爲當你按下你的活動從「Oncreate」方法開始,它將不會得到值...因此,將拋出nullpointer。 – jigar 2013-09-24 13:23:28

回答

0

嘗試使用startActivityForResult開始我們的活動,並使用setResult(int)到結果,從活動ç送回到

+0

您還需要檢查結果代碼是否等於RESULT_OK(-1),因爲在您嘗試從Intent中檢索和附加代碼之前,在返回鍵被擊中時RESULT_CANCELED(0)將會返回RESULT_CANCELED(0)。爲了加倍安全,請檢查Intent是否爲空。並且您在返回時需要使用setResult(int ResultCode,Intent data),而不僅僅是'retrieve and extras'的setResult(int Result Code) – NickT 2010-10-19 13:12:10

+0

,請閱讀'檢索任何附加內容'。 -typo,對不起 – NickT 2010-10-19 13:18:58

0

,真正的你是說包越來越空值,所以你必須防止空值, 像第一檢查束值如果不等於null然後只設置

Intent myintent = getIntent(); 
if (null != myintent.getExtras()) { 
    // do your work here 
    String Name = myintent.getExtras().getString("Name"); 
} else { 
    // not here you can't get values 
    // so getting force close here 
    Toast.makeText(getApplicationContext(), "No Recor Here..", 12).show(); 
} 
從一些代碼