2017-05-25 43 views
0

在我說別的之前,我沒有問如何爲我的程序做這項工作,我想弄清楚自己。我已經看到了十億個代碼片段和答案。但我認爲我不瞭解其背後的概念,並想驗證我的理解是否正確。創建一個返回按鈕到以前的活動(僅限於概念)

創建後退按鈕並使其工作: 1)查找並編輯操作欄的xml,以顯示後退按鈕。 2)使用按鈕id來創建OnClickListener。 3)在OnClick中,使用意向之前的活動。

難道這不簡單嗎?在做這項工作的概念上,適當的步驟是什麼?

回答

1

這可能有效,但它不會是常態。 根據您啓動Activity的方式,只需撥打finish()即可回到上一個Activity

容易

1)使用AppCompatActivity

2)使homeAsUp(後退鍵)

ActionBar actionBar = getSupportActionBar(); actionBar.setDisplayHomeAsUpEnabled(true)

+0

「使用AppCompatActivity」的意思是繼承類的正確性?編輯操作欄的標準是僅使用java,不使用xml?有沒有關於這方面的文獻? – Destreation

+0

是的,大量的細節在這裏 - https://developer.android.com/training/implementing-navigation/ancestral.html –

+0

你解釋的方法重新啓動父活動。如果您希望在切換活動之前加載活動的最後一個狀態,該怎麼辦? – Destreation

0

嗯.....我不知道這個答案會是有幫助但你說

3)在OnClick中,使用意向到先前的活動性。

不過,想想這種情況怎麼樣?

如果有片段,並且您在那裏按'後退按鈕',您應該在片段之前不要在活動之前去。 :)

你說你想弄清楚自己所以,我不會說你想要的更多(關於代碼)。祝你好運!

+0

我是一名自學的「編碼員」,目前我不熟悉「片段」這個詞,顯然我現在將研究它,但是這個概念是我理解動作欄操縱的必要條件嗎? – Destreation

+0

啊......我想我誤解了你的問題。你不是說你想製作** Re-creative Back Button **嗎?就像Red-Back按鈕,Blue-back按鈕,矩形按鈕或者其他具有相同「後退按鈕」功能的其他功能一樣。 – TyeolRik

+0

好吧..如果你學習後退按鈕的概念,你應該學習'Flag','Activity Life Cycle'(當然也是'Fragment Life Cycle')生命週期會造成巨大的bug,你必須修復:) – TyeolRik

0

Android活動存儲在活動堆棧中。

那麼通過調用完成()方法,如果你開始的活動與startActivity()

this.finish()

或者乾脆如果你打開了新的活動從另一個活動startActivityForResult() 調用finishActivity()方法從您的代碼上單擊該按鈕的

this.finishActivity()

,它會帶你回到過去的活動。

相關問題