当前位置: 首页 > 知识库问答 >
问题:

替换包含ViewPager的片段

李良策
2023-03-14

我有一个活动,它包含一个片段容器(FrameLayout),我在Activity.onCreate()期间在其中放置了一个片段。片段包含一个包含一串片段的ViewPager。所有这些工作都很好。页面内容显示,我可以很好地在页面中滑动,甚至可以看到操作栏中的操作,因为贡献的页面变得可见。

现在我用另一个片段替换包含ViewPager的片段:

FragmentTransaction transaction = fragmentManager.beginTransaction();
transaction.replace(R.id.content, new NewFragment(), tag);
transaction.addToBackStack(null);
transaction.commit();
FATAL EXCEPTION: main                                                                                  
java.lang.IllegalStateException: Recursive entry to executePendingTransactions                         
    at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1403)        
    at android.support.v4.app.FragmentManagerImpl.executePendingTransactions(FragmentManager.java:431) 
    at android.support.v4.app.FragmentPagerAdapter.finishUpdate(FragmentPagerAdapter.java:141)         
    at android.support.v4.view.ViewPager.populate(ViewPager.java:895)                                  
    at android.support.v4.view.ViewPager.populate(ViewPager.java:772)                                  
    at android.support.v4.view.ViewPager.setAdapter(ViewPager.java:380)                                
    at com.domain.app.MyFragment.onViewCreated(MyFragment.java:39)    
    at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:885)                
    at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1083)               
    at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:635)                            
    at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1431)        
    at android.support.v4.app.FragmentManagerImpl.executePendingTransactions(FragmentManager.java:431) 
    at android.support.v4.app.FragmentPagerAdapter.finishUpdate(FragmentPagerAdapter.java:141)         
    at android.support.v4.view.ViewPager.populate(ViewPager.java:895)                                  
    at android.support.v4.view.ViewPager.populate(ViewPager.java:772)                                  
    at android.support.v4.view.ViewPager.setAdapter(ViewPager.java:380)                                
    at com.domain.app.MyFragment.onViewCreated(MyFragment.java:39)    
    at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:885)                
    at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1083)               
    at android.support.v4.app.BackStackRecord.popFromBackStack(BackStackRecord.java:712)               
    at android.support.v4.app.FragmentManagerImpl.popBackStackState(FragmentManager.java:1480)         
    at android.support.v4.app.FragmentManagerImpl.popBackStackImmediate(FragmentManager.java:447)      
    at android.support.v4.app.FragmentActivity.onBackPressed(FragmentActivity.java:166)                
    at android.app.Activity.onKeyUp(Activity.java:2099)

此外,我已经用FragmentPagerAdapter替换了FragmentPagerAdapter,它实际上能够重新创建包含ViewPager但不包含ViewPager本身的片段。页面的内容是不可见的,尽管有些页面需要在寻呼机上。在onPageSelected回调方面,滑动是不可预测的,有时可以看到操作栏中的操作是由ViewPager中的一个片段提供的。但所有这些都是零星的。

如有任何帮助,将不胜感激。多谢了。

共有1个答案

夏侯浩气
2023-03-14

问题将被标记为不可解决,因为碎片接缝中的碎片仍未得到支持,截至Hackborn女士。

 类似资料:
  • 我有以下布局 一切正常,但我想用一个片段替换浏览器 这不是重新调整ViewPager的间距,我该怎么办???

  • 我正在创建一个包含三个视图的可视寻呼机。第一个视图是ListView,onItemClick用WebView替换了这个片段。而且我有两个问题:当添加' transaction . addtobackstack(null)'或者' transaction . setcustomanimations(...)'片段与WebView stopps一起显示。如果没有这几行,它会显示出来,但我不能按后退按钮

  • 我们正在更新一些旧的WiX脚本,以利用组件的功能属性,这样无论何时添加或删除组件,我们都不必在两个位置更新文件(一次是添加组件,另一次是向组件组添加组件引用)。 我们将WiX项目分离到单独的文件中,每个片段一个,以使事情更易于管理。但是,我定义特性组件的片段不再包括在内。这听起来与托马斯在回应特性属性声明时的问题完全相同。但是,当他使用热自动生成他的Wix文件时,我们正在从头开始手工制作它们。 我

  • 问题内容: 有没有类似于Go中的方法的东西,而不必搜索切片中的每个元素? 问题答案: Mostafa已经指出,编写这种方法很简单,而mkb为您提供了使用sort包中的二进制搜索的提示。但是,如果要进行很多此类包含检查,则还可以考虑使用地图。 使用惯用语检查特定的映射键是否存在很简单。由于您对值不感兴趣,因此也可以创建一个例如。在此处使用空值的优点是不需要任何额外的空间,并且Go的内部映射类型针对该

  • 是否有类似于方法,而不必搜索片中的每个元素?

  • 我正在实现一个gallery应用程序,它有一个片段,其中包含一个带有图像的RecyclerView,单击一个图像,我会转到ViewPager循环浏览图像 目前,我正试图实现像本视频中那样的入门动画。问题是动画不起作用,我显然遗漏了一些东西(只是显示与转换相关的代码): 查看页面: GridAdapter: 在MainActivity中,我在onClick中实例化ViewPagerFragment: