![](/img/trans.png)
[英]fragmentTransaction.replace().commit() calls onCreate of parent Activity
[英]Activity calls onCreate on Back
我有一個名為 A 的活動,活動 A 上的一些事件調用活動 B。現在,當我在活動 B 中使用向上導航時,它會返回到活動 A,但也會調用 onCreate 方法。 如果我在后面使用硬件/軟鍵,它不會調用 onCreate 而只是返回到它離開的 Activity A。 如何使向上導航的行為方式相同?
我的 onCreate 異步進行網絡調用。 撥打另一個電話只會浪費數據和時間。 這是我用來從活動 A 啟動活動 B 的代碼。
Intent intent = new Intent(MainActivity.this, newsIndexActivity.class);
intent.putExtra("CityName", cityName.getText());
startActivity(intent);
向上和向后導航是不一樣的,如果你想讓你的向上導航按鈕表現得像后退按鈕,你應該做這樣的事情
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
this.finish();
return true;
}
return super.onOptionsItemSelected(item);
}
如果可能,您應該查看此鏈接:
在那里您可以獲得更多關於此的信息。
通過將父活動的 launchMode 聲明為 singleTop,我們可以防止系統在每次按下 Up 時創建新活動。
沒有任何代碼似乎很難解決,但最可能的原因是您正在調用startActivity
。 只需使用finish()
關閉您當前的活動並使用 backstack 它應該按預期運行。
只需在按鈕回調偵聽器中調用 finish() 或 onBackPressed() 方法。
finish();
super.onBackPressed();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.