gpt4 book ai didi

java - 返回 Activity 的 fragment

转载 作者:太空宇宙 更新时间:2023-11-04 13:28:13 26 4
gpt4 key购买 nike

我有一个 Activity (MainActivity),它有一个抽屉导航,可以显示 2 个 fragment ( fragment A 和 B),一次一个。 (此 Activity 是android studio创建的带抽屉导航的默认 Activity )

当我选择抽屉上的 fragment B 时,操作栏菜单会更新以显示特定于 fragment B 的按钮(按钮 P)。

按钮 P 打开一个具有明确 Intent 的独立 Activity (IndependentActivity),在该 Activity 上我执行数据库操作,然后完成该 Activity 返回到 MainActivity。

问题是:当 IndependentActivity 完成时,会显示 MainActivity 但是它显示 fragment A 而不是 fragment B, fragment B 是调用 Intent 前往 IndependentActivity 的 fragment 。

如何通过显示启动转到另一个 Activity 的操作的 fragment 来解决此问题?有什么办法可以保存出现的 fragment 吗?

最佳答案

基本上你需要做的是:

  • 进入IndependentActivity时保存MainActivity的状态
  • 退出 IndependentActivity 时重新加载 MainActivity 的状态

一个简单的实现可以是:

@Override
public void onSaveInstanceState(Bundle savedInstanceState) {
// Save which fragment that is in the view when entering another activity
savedInstanceState.putString("fragment", "fragmentB");
super.onSaveInstanceState(savedInstanceState);
}

fragment B 可以替换为告诉应用程序当前 fragment 的字符串。

返回您想要的 Activity 后:

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if( savedInstanceState != null ) {
// Get which fragment that was active when you left the activity
savedInstanceState.getString("fragment");

// Programatically select the fragment here
}
}

您可以在此处阅读有关保存实例状态的更多信息:

http://developer.android.com/training/basics/activity-lifecycle/recreating.html

我将让您以编程方式选择 fragment 。希望对您有所帮助!

关于java - 返回 Activity 的 fragment ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32444875/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com