因此,我注意到单个片段和片段的 ViewPager 之间的 FragmentTransaction(特别是 onBackPressed())严重减慢。
以下是一些时间细节:
1) ParentActivity 有一个 Fragment,它有一个 ViewPager 的 Fragments。2) 执行 FragmentTransaction 以将上面的 ViewPager 替换为另一个单独的 Fragment。3) 按回 (onBackPressed()) 恢复到 FragmentTransaction 上方,所以现在我们回到第一个状态。
在此示例中,执行步骤 3),特别是 onBackPressed() 至少需要 150 毫秒。这可笑的长!但是,我注意到,如果在第 2 步)片段事务导致用不同的 ViewPager 替换原始 ViewPager,则 3)中的 onBackPressed() 执行得更好(即 <80 毫秒)。
也就是说,从 Fragment 中的 ViewPager 切换到同一 Fragment 中的另一个 ViewPager 执行得不错,但是,在 Fragment 的 ViewPager 到简单 Fragment 之间切换时,onBackPressed() 的性能会显着恶化。
有没有其他人看过这个?