android - 用 ViewPager 中片段 3 中的操作中的片段 2 替换片段 1
问题描述
正如标题所示,是否可以在第三个片段中替换两个片段,例如按下片段 3 中的按钮将片段 1替换为片段 2,而所有 3 个片段都在 ViewPager 内?为了更简单的理解,这就是我的 PagerAdapter 的样子:
public class SectionsPagerAdapter extends FragmentPagerAdapter {
int numberOfTabs;
public SectionsPagerAdapter(FragmentManager fm, int numberOfTabs) {
super(fm);
this.numberOfTabs=numberOfTabs;
}
@Override
public Fragment getItem(int position) {
// getItem is called to instantiate the fragment for the given page.
// Return a PlaceholderFragment (defined as a static inner class below).
switch(position){
case 0:
CreateEventFragmentPage1 tab1 = new CreateEventFragmentPage1();
return tab1;
case 1:
CreateEventFragmentPage2 tab2 = new CreateEventFragmentPage2();
return tab2;
case 2:
CreateEventFragmentPage3 tab3 = new CreateEventFragmentPage3();
return tab3;
default:
return null;
}
}
@Override
public int getCount() {
// Show 3 total pages.
return numberOfTabs;
}
}
任何和所有的建议都将受到高度赞赏。
解决方案
因为这是一个适配器FragmentPagerAdapter
,所以必须有一个notifyChanged
方法或类似的
我想它会像notifyDataSetChanged
Recyclerview一样工作
另一个原因是周围的电流碎片没有被完全破坏
另外重写方法getItem(int position)
来执行重新排序片段的逻辑
也尝试使用FragmentStatePagerAdapter
推荐阅读
- r - 根据单元格中的值数量在 R 中重塑数据框
- javascript - 为什么我的谷歌地图 Lat/Lng 变量不存储任何内容?
- ios - 如何知道 iOS 模拟器上所有应用程序的包标识符
- javascript - 类型“()=> DocumentData”上不存在属性“数据”
- c# - c# wpf - 多线程
- html - 在 Web 开发中实现卡拉 OK 曲目
- gremlin - 通过 gte 或 lte 过滤的 Gremlin python
- ruby - 从静态导轨中获取价值 select_tag
- unity3d - 用于 MIDI 输出的 VR 中的 Unity 乐器
- django - Django:将请求传递给我的 modely.py