情況1
呃,被坑了幾個小時,后來發現,在調用setResult的時候,requestCode隨便傳了個Activity的RESULT_OK,而這個常量的值是-1,導致onActivityResult沒有被調用。
握了棵草啊。。。
看看文檔:requestCode If >= 0, this code will be returned in onActivityResult() when the activity exits.
所以,但你們的setResult無效時,看看你傳的requestCode是不是小於0吧
情況2
如果不是情況1,而是setResult在onPuase/onStop等地方設置,解決方案是
//重寫onBackPressed public void onBackPressed(){ setResult(); super.onBackPressed(); }