1. 是否正确的调用了setResult()。
2. 是否是在Activity的finish()调用之前调用的setResult()。
3. 如果是按返回键返回的看是否自主消化掉了onBackPressed()函数,这个函数里调用了finish()函数,因此我们需要自主消化掉这个函数。既然如此,也别再复写的函数中调用super.onBackPressed()。
4. 是否使用的Intent.FLAG_ACTIVITY_NEW_TASK启动的新Activity。原因不知,但猜想应该是使用这种方式启动Activity的话,底层会自动在setResult()中发送resultCode为RESULT_CANCEL。