我有很多活動。他們每個人都有一個意圖,指的是同一個活動。有沒有辦法找出哪個意圖開始了活動?如何檢查哪個Intent啓動了該活動?
4
A
回答
15
嘗試爲:
Intent intent = new Intent();
intent.setClass(A.this,Receiveractivity.class);
intent.putExtra("Uniqid","From_Activity_A");
A.this.startActivity(intent);
Intent intent = new Intent();
intent.setClass(B.this,Receiveractivity.class);
intent.putExtra("Uniqid","From_Activity_B");
B.this.startActivity(intent);
Intent intent = new Intent();
intent.setClass(C.this,Receiveractivity.class);
intent.putExtra("Uniqid","From_Activity_C");
C.this.startActivity(intent);
,並在的onCreate主要活動:
//obtain Intent Object send from SenderActivity
Intent intent = this.getIntent();
/* Obtain String from Intent */
if(intent !=null)
{
String strdata = intent.getExtras().getString("Uniqid");
if(strdata.equals("From_Activity_A"))
{
//Do Something here...
}
if(strdata.equals("From_Activity_B"))
{
//Do Something here...
}
if(strdata.equals("From_Activity_C"))
{
//Do Something here...
}
........
}
else
{
//do something here
}
使用putExtra
從每個活動發送的唯一鍵,以確定從哪個活動意圖接收
4
你沒有提供任何上下文,所以這裏有一個一般的方法。
將額外在每個意向型,就像一個獨特的int或字符串:
intent.putExtra("Source", "from BroadcastReceiver");
及用途:
String source = getIntent().getStringExtra("Source");
1
我發現,不涉及從一個活動傳遞到另一個數據的解決方案。
使用startActivityForResult在你通話活動啓動活動:
ActivityCompat.startActivityForResult(this, new Intent(this, MyActivity.class), 0, null);
在被叫用戶的活動,你可以使用下面的代碼來檢測調用活動。
if (getCallingActivity() != null) {
Log.d(TAG, getCallingActivity().getClassName());
}
希望這會有所幫助。乾杯。
相關問題
- 1. 如何檢查在新活動中啓動了哪個按鈕?
- 2. 如何使用context.startActivity(intent)啓動活動; ...?
- 3. 哪項活動啓動了此活動?
- 4. 如何檢查完成哪個活動
- 5. 如何確定哪個活動啓動了一項服務?
- 6. 如何檢查啓動了哪個進程sys_open
- 7. Camera Intent在活動中啓動
- 8. 我該如何單元測試從活動啓動/發送的Intent?
- 9. Android活動檢查服務啓動另一個活動
- 10. 如何知道哪個活動調用了當前活動?
- 11. 如何在Android上使用Intent啓動導航活動
- 12. 如何通過intent從我自己的活動啓動connectbot
- 13. 如何使用Intent啓動活動並在新活動中傳遞變量?
- 14. 如何從PlaceholderFragment中啓動一個Intent?
- 15. 哪個活動應該首先出現?定義爲啓動器?
- 16. 瞭解哪個活動首先在Android應用中啓動
- 17. 檢查啓動了哪個應用程序?
- 18. android確定要啓動哪個活動
- 19. 如何找出哪個活動啓動了觸發BroadCastReceiver的意圖?
- 20. NullPointerException當通過intent啓動一個活動時
- 21. Android - 在啓動Intent之前確保活動還活着?
- 22. 如何在內部靜態類中使用Intent啓動一個活動?
- 23. 檢查一個活動是否活動
- 24. 在任何意圖啓動之前執行邏輯。決定應該啓動哪個Intent
- 25. 如何檢查哪個UIViewController處於活動狀態
- 26. 如何檢查哪個圖像設置爲活動視圖?
- 27. 如何檢查哪個製表面板是活動
- 28. 如何檢查哪個div是活動的通過會話值
- 29. WinJS.UI.PivotItem:如何檢查哪一個是活動的?
- 30. 如何指定在應用程序啓動時啓動哪個活動?
+1首先回答!!! :) – 2012-07-17 19:40:17