我有一個MainActivity,它根據按下的特定按鈕啓動片段。當我在一個片段下,然後按下後退按鈕時,應用程序將被關閉。我的想法是,當按下後退按鈕時,我將用全部按鈕顯示MainActivity。我在MainActivity中編寫這些代碼行:如何從切片切換回MainActivity?
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if ((keyCode == KeyEvent.KEYCODE_BACK)) {
recreate();
}
return super.onKeyDown(keyCode, event);
}
這是一個很好的解決方案嗎?它工作得很好,唯一的事情是在片段佈局事務和活動佈局之間,有一個不到半秒的黑屏。有沒有辦法解決它?
可以共享此重新創建的代碼()?此外,您可以使用片段管理器來替換片段 – droidx
recreate();方法可以通過Android,它不是我的。我也可以直接從片段傳遞給另一個片段嗎? –
Ahh ..我剛剛閱讀了關於重新創建方法..它導致此活動被重新創建一個新的實例。所以,這不是推薦的方式,是的,你可以通過使用接口與其他片段進行通信。查看本文檔。 http://developer.android.com/training/basics/fragments/communicating.html – droidx