獲得一個結果要描述的情況,說我有3個活動:A,B,和C 並且在活性的一個按鈕,用於啓動活動B,並且在活性C使用時的按鈕它被點擊,就應該從活動c。發送到活動的結果的從一個活動
我的問題是...有沒有辦法從C結果傳遞至A?如果有辦法,它是什麼?
注意:如果你給的方式使用startActivityForResult(...)和onActivityResult(...)
預先感謝您的方法,這將是很好
獲得一個結果要描述的情況,說我有3個活動:A,B,和C 並且在活性的一個按鈕,用於啓動活動B,並且在活性C使用時的按鈕它被點擊,就應該從活動c。發送到活動的結果的從一個活動
我的問題是...有沒有辦法從C結果傳遞至A?如果有辦法,它是什麼?
注意:如果你給的方式使用startActivityForResult(...)和onActivityResult(...)
預先感謝您的方法,這將是很好
有一個稱爲FLAG_ACTIVITY_FORWARD_RESULT
的Intent
標誌。呼叫:
Intent intent = new Intent(this, ActivityB.class);
startActiivtyForResult(intent);
開始Activity
B時的(通過調用startActivityForResult(intent)
)。 當打開C,致電:
Intent intent = new Intent(this, ActivityB.class);
intent.setFlags(Intent.FLAG_ACTIVITY_FORWARD_RESULT);
startActiivtyForResult(intent);
finish();
這意味着:打開C,接近B.然後,關閉胡亞蓉C使用時,請致電:
setResult(123);
finish();
從C結果將回到A.
你的意思,我應該在的onClick添加此行代碼在活動B( ) 方法? – user8447949
對不起,我不明白,你能詳細解釋一下嗎? – user8447949
編輯,這個問題,現在希望這個更清楚。 –
如果你只是使用像String對象這樣簡單的類型,你可以在B,C活動中使用Bundle和補充變量。並使用onActivity結果將其從C-> B-> A轉移。或者你可以使用共享首選項。
這是個好主意。不過,我想從C傳遞到一個立即 – user8447949
讓您導致活性C,然後將結果發送到共享偏好和共享偏好 –
呼叫活動A和蒙古包結果,我想執行代碼時的結果獲得通過,通過使用一個代碼或像onActivityResult()方法。 – user8447949
如果您正在從Activity C
導航到Activity A
,則可以使用Intent
傳輸數據。否則,我建議使用Interface
,然後在Activity A
中的callback
方法中傳遞數據作爲參數。你說你想得到如onActivityResult
這樣的答案,爲此,我猜Activity C
應該退出或調用onActivityResult
Activity A
爲什麼不使用數據庫(例如Firebase)來存儲結果?並從活動C檢索它? –
@CatalinGhita我能做到這一點,但我想馬上得到結果時,結果被傳遞,通過使用代碼或類似onActivityResult()的方法 – user8447949