1. 程式人生 > >android startActivityForResult與startActivity的不同之處

android startActivityForResult與startActivity的不同之處

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。