Android - 从活动到片段的导航

pha*_*ell 4 android android-fragments android-activity android-navigation android-savedstate

我正在开发一些应用程序,我有一个问题.

我有:1.在FrameLayout中使用ListFragment的活动A(导航抽屉模式):xml:

    <FrameLayout
        ...>

    </FrameLayout>

    <LinearLayout
        ...>

    </LinearLayout>

</android.support.v4.widget.DrawerLayout>
Run Code Online (Sandbox Code Playgroud)
  1. 活动B,显示ListFragment中ListView的详细数据.

如何通过保存ListFragment的UI从活动B返回(使用导航按钮)到活动A(如果我使用Home Back返回,则重新创建活动).顺便说一句,如果我按下手机上的后退按钮,活动就不会重新创建并返回之前的状态.

Epi*_*rce 11

使用"向上"导航时,将重新创建上一个活动.为了防止在保留向上导航时发生这种情况,您可以获取父活动的意图,并将其保留在前面(如果存在),否则创建它.

public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
        case android.R.id.home:
            Intent parentIntent = NavUtils.getParentActivityIntent(this);
            parentIntent.setFlags(Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT | Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
            startActivity(parentIntent);
            finish();
            return true;
    }
    return super.onOptionsItemSelected(item);
}
Run Code Online (Sandbox Code Playgroud)

我还在launchMode="singleTop"Manifest中指定了.但我不确定这是否必要.