任何人都可以列出requestCode
的值是什麼,startActivityForResult()
及其目的是什麼?另外,你能解釋一下setResult
參數,如RESULT_OK
,還有什麼?請幫助。startActivityforResult的RequestCode的類型
回答
當你啓動了結果的活動與requestCode >= 0
,該代碼將返回到第一個活動的onActivityResult()
第二,當活動finished.You可結果啓動多個Activity
從Activity
。在每種情況下,您都可以調用startActivityForResult()
傳遞requestCode的方法。在onActivityResult()
中,我們可以使用requestCode來找出我們收到回調的活動。所以爲了區分來自Activities
的回調,我們使用不同的requestCodes。
對於如:
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Intent i = new Intent(FirstActivity.this, SecondActivity.class);
startActivityForResult(i, 1);
Intent i = new Intent(FirstActivity.this, ThirdActivity.class);
startActivityForResult(i, 2);
}
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == 1) {
if (resultCode == RESULT_OK) {
//Get the result from SecondActivity
}
}
else if (requestCode == 2) {
if (resultCode == RESULT_OK) {
//Get the result from ThirdActivity
}
}
}
您可以在requestCode
中隨意放置任何東西,它可以讓您瞭解在指定的requestCode
開始Activity
後您期待回來的具體信息。 被調用的Activity
應在調用setResult(RESULT_OK)
時將其信息傳遞給前面的Activity
以驗證這是正確的數據,並且一切正常。
requestCode
是由你自己決定的。它會幫助您識別哪個Activity
已完成,在您的onActivityResult()
方法中。此外,結果參數或多或少取決於您,只要您只使用自己的活動。您可以將其視爲調用活動的返回值。
requestCode
in startActivityForResult()
用於分配一個id給請求,所以請求可以用這個代碼來標識,在onActivityResult()
。就像如果有人在onActivityResult()
已經寫代碼通過下面的代碼來啓動一個活動B和C,兩種活動
startActivityForResult(new Intent(A.this, B.class), 1);
startActivityForResult(new Intent(A.this, C.class), 2);
現在你可以承認這Activity
返回結果。
setResult()
方法用於設置結果中的Intent
和resultCode
。通過resultCode
我們告訴onActivityResult()
結果是好的,或取消。我們在Result中設置了Intent
,可以用來傳遞一些數據,通過intent.putExtra()
方法。
- 1. startActivityForResult中的requestCode參數
- 2. 使用startActivityForResult,如何獲取子活動中的requestCode?
- 3. startActivityForResult()不要調用onActivityResult(int requestCode,int resultCode,Intent數據)?
- 4. 錯誤requestCode
- 5. onActivityResult requestcode Facebook SDK
- 6. super.onActivityResult(requestCode,resultCode,data);
- 7. PendingIntent get requestCode
- 8. startActivityForResult內startActivityForResult
- 9. 呼叫開始startActivityForResult類內
- 10. 無法啓動intent startActivityForResult類
- 11. 的ActivityGroup推startactivityforresult
- 12. Android的startActivityForResult
- 13. startActivityForResult的問題
- 14. StartActivityForResult
- 15. startActivityForResult();
- 16. startActivityForResult
- 17. 方法startActivityForResult(Intent,int)未定義爲新類型AdapterView.OnItemClickListener
- 18. 來自ActivityGroup的startActivityForResult
- 19. android - 從ArrayAdapter的startActivityForResult
- 20. startActivityForResult/onActivityResult的問題
- 21. TabActivity中的Android startActivityForResult
- 22. 來自ActivityGroup的startActivityForResult?
- 23. PendingIntent中的requestCode始終受支持?
- 24. ResultCode和RequestCode不起作用
- 25. 如何使用requestCode在PendingIntents
- 26. 測試onActivityResult特定requestCode
- 27. startActivityForResult Android
- 28. 將StartActivityforResult移動到外部類
- 29. 如何從BroadcastReceiver類啓動startActivityForResult()?
- 30. startActivityForResult用於拍照的Android