android startActivityForResult與startActivity的不同之處
阿新 • • 發佈:2018-12-16
startActivity
僅僅是跳轉到目標頁面,若是想跳回當前頁面,則必須再使用一次startActivity
startActivityForResult
可以一次性完成這項任務,假若從T1Activity跳轉到下一個T2Activity,而當這個T2Activity呼叫了finish方法以後,程式會自動跳轉回T1Activity,並呼叫前一個T1Activity中的onActivityResult方法。
1、請求碼的作用
使用startActivityForResult方法開啟新的Activity時,我們需要傳入一個請求碼,請求碼的值是根據業務需要由自己設定的,用於標識請求來源。
例如:一個Activity有兩個按鈕,點選這兩個按鈕都會開啟同一個Activity,不管是哪個按鈕開啟新的Activity,當這個新的Activity關閉後,系統都會呼叫前面Activity的onActivityResult(int requestCode,int resultCode,Intent data)方法。
2、結果碼的作用
在一個Activity中,可能會使用startActivityForResult方法開啟多個不同的Activity處理不同的業務,結果碼用於標識返回的資料來自於哪個新的Activity。