Android fragmentTransaction add()和片段的onPause

Android fragmentTransaction add()和片段的onPause,android,android-fragments,android-navigation,Android,Android Fragments,Android Navigation,我已经在我的Android应用程序中实现了导航作为一个活动和许多片段 当我打开新的子片段时,我称之为: FragmentTransaction tx = getSupportFragmentManager().beginTransaction() .addToBackStack(null).replace(R.id.fragment_container, f) .setBreadCrumbTitle(f.getClass().getSimp

我已经在我的Android应用程序中实现了导航作为一个活动和许多片段

当我打开新的子片段时,我称之为:

    FragmentTransaction tx = getSupportFragmentManager().beginTransaction()             .addToBackStack(null).replace(R.id.fragment_container, f)
            .setBreadCrumbTitle(f.getClass().getSimpleName());
    tx.commit()
这非常有效,因为旧片段没有被销毁,所以当我回到后堆栈时,旧片段保留了滚动位置和输入的所有内容

问题是,在一个片段中,当我在上面添加另一个片段时,我实际上需要暂停某些内容。我原以为onPause会被调用,但事实并非如此——我想所有其他碎片都生活在它们上面的碎片之下


另一方面,我也认为随着用户导航的深入,我的应用程序会逐渐变慢。我是否应该替换事务中的片段,以便只有一个片段位于顶部?

开始一个新的片段活动,而不是在每个片段的顶部添加无休止的片段。这将使您能够更轻松地处理生命周期并提高性能。如果您没有完成FragmentActivity,滚动位置等仍然保留在FragmentActivity托管的片段中。是的,但是我现在应该为我的30个片段创建30个不同的活动吗?当我想切换到平板电脑布局,并将碎片并排放置时,我会怎么做?是的,基本上就是这样。如果你想让片段并排排列,你的FragmentActivity将有一个带有两个占位符的线性布局,你可以在其中加载片段。如果我想让布局左|右:[菜单|联系人],然后我单击联系人,它应该改为[联系人|特定人],然后[特定人|与此人的电子邮件]-那么我应该为平板电脑布局安排不同的活动吗?尝试按照Android提供的工具创建一个流畅的应用程序。这将简化你和用户的应用程序&&