我有3項活動。當我從startActivity
從一個活動轉到另一個活動時,我怎麼能知道我開始的活動,它從哪開始的活動?如何查找當前活動從(startActivity)開始的活動?
0
A
回答
2
只需使用意圖,並指定這樣父活動:
活動A將隨後在活動B打開活動B
Intent intent = new Intent(this, ActivityB.class);
intent.putExtra("parent_activity", "activityA");
startActivity(intent);
,檢查包包含parent_activity
關鍵
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_display_message);
if (getIntent()!= null && getIntent().getExtras().containsKey("parent_activity")) {
String parentActivity = getIntent().getStringExtra()("parent_activity");
}
}
+0
查找「parent_activity」權限時,您打算使用'getIntent()'而不是'savedInstanceState'? –
+0
謝謝喬治,我剛修好它 – Mehdi
0
您可以將家長活動的標識符置入您要開始的意圖以及子活動訪問它。
ParentActivity
static final int ACTIVITY_CODE = 1;
...
Intent intent = new Intent(this, ChildActivity.class);
intent.putExtra(KEY_CODE, ACTIVITY_CODE);
startActivity(intent);
...
ChildActivity
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
int code = getIntent.getIntExtra(KEY_CODE)
swith(code) {
//do something
}
}
我們使用一個整數的關鍵,而不是活動的名稱,如果你改變你的活動的名稱,你可以少麻煩。
相關問題
- 1. 如何從singleInstance活動開始活動?
- 2. 監控使用startActivity開始的活動()
- 3. 活動不會以「startActivity();」開始
- 4. 開始新的活動「當前活動後面」
- 5. 當前活動背後的開始活動
- 6. 當新活動開始時不會暗淡以前的活動
- 7. 從開始開始活動
- 8. 從並非從當前活動開始的活動獲得額外價值
- 9. 開始活動不會調用onDestory當前活動
- 10. 如何通知當前活動從以前的活動
- 11. 從非活動開始活動
- 12. Android TabActivity:如何僅從當前選項卡開始活動?
- 13. 開始活動前檢查條件
- 14. RunTimeException當開始活動
- 15. 如何從tabview中的列表活動開始新的活動
- 16. 如何從集成的google api開始新的活動活動
- 17. 從片段的意圖開始活動開始空白活動
- 18. Android - 始終從通知返回到當前活動活動?
- 19. 在從服務開始活動之前關閉所有活動
- 20. 從開始日期和結束日期開始,我如何查找當前「活動」的記錄?
- 21. 如何從我的活動開始日曆活動
- 22. 如何從其他活動的片段開始活動 - Android
- 23. 活動A開始活動B,如何關閉活動A
- 24. 開始活動
- 25. 如何開始活動
- 26. 如何開始活動?
- 27. 如何從基地活動刷新當前活動
- 28. 如何開始活動並結束之前啓動的所有其他活動
- 29. 如果從其他活動開始活動,則啓動方法
- 30. 從LockScreen開始活動
的可能的複製【如何獲得兒童活動名稱父活動(http://stackoverflow.com/questions/9885994/how-get-name-parent-activity-in-child-activity) –