在我的应用程序中构建功能允许用户从Viewpager中删除页面/片段时,我已经苦苦挣扎了几天,我尝试将FragmentPageAdapter更改为FragmentStatePageAdapter并覆盖getItemPosition()
到{{但是,当我调用return POSITION_NONE;
fragments.remove(page);
以前有人成功完成了这项工作吗?看起来它应该非常简单,但它一直没有,下面是我的片段适配器,任何帮助都会有很长的路要走!
pageAdapter.notifyDataSetChanged();
答案 0 :(得分:2)
使用杰克沃顿的ViewPagerIndicator。它还有一个带有此功能的开源示例应用程序(在选项菜单中添加和删除片段)。
将它放入适配器:
public void setCount(int count) {
if (count > 0 && count <= 10) {
mCount = count;
notifyDataSetChanged();
}
}
这是添加页面:
if (mAdapter.getCount() < 10) {
mAdapter.setCount(mAdapter.getCount() + 1);
mIndicator.notifyDataSetChanged();
}
这是删除页面的方法:
if (mAdapter.getCount() > 1) {
mAdapter.setCount(mAdapter.getCount() - 1);
mIndicator.notifyDataSetChanged();
}