FragmentPagerAdapter 切换框架不刷新内容

qq_37893573 2017-05-31 03:33:51
public class MyPagerAdapter extends FragmentPagerAdapter
{
private Fragment pageFragment;
private int NUM_PAGES = 4;
private final String[] Titles= new String[] {
"待接单",
"已接单",
"配送中",
"全部"};
public MyPagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position) {
switch (position){
case 0:
pageFragment = new Frm1();
return pageFragment;
case 1:
pageFragment = new Frm2();
return pageFragment;
case 2:
pageFragment = new Frm3();
return pageFragment;
case 3:
pageFragment = new Frm4();
return pageFragment;

default:
return null;
}
}

@Override
public CharSequence getPageTitle(int position) {
return Titles[position];
}
@Override
public int getCount() {
return NUM_PAGES;
}
@Override
public int getItemPosition(Object object) {
return POSITION_NONE;
}

}


网上看了许多方式仍旧不好使 请大神帮忙看看 目前 访问FRM1 FRM2 后 内容不更新但是 访问最后一个FRM4 返回到FRM1却发现更新了 很无语求解答
...全文
215 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_37893573 2017-06-01
  • 打赏
  • 举报
回复
 @Override
    public Object instantiateItem(ViewGroup container, int position) {
        if (mCurTransaction == null) {
            mCurTransaction = mFragmentManager.beginTransaction();
        }

        final long itemId = getItemId(position);

        // Do we already have this fragment?
        String name = makeFragmentName(container.getId(), itemId);
        Fragment fragment = mFragmentManager.findFragmentByTag(name);
        if (fragment != null) {
            if (DEBUG) Log.v(TAG, "Attaching item #" + itemId + ": f=" + fragment);
            mCurTransaction.attach(fragment);
        } else {
            fragment = getItem(position);
            if (DEBUG) Log.v(TAG, "Adding item #" + itemId + ": f=" + fragment);
            mCurTransaction.add(container.getId(), fragment,
                    makeFragmentName(container.getId(), itemId));
        }
        if (fragment != mCurrentPrimaryItem) {
            fragment.setMenuVisibility(false);
            fragment.setUserVisibleHint(false);
        }

        return fragment;
    }
查询百度 说是这段代码的问题具体怎么操作求解答啊
qq_37893573 2017-06-01
  • 打赏
  • 举报
回复
有没有大神啊
qq_37893573 2017-05-31
  • 打赏
  • 举报
回复
private int NUM_PAGES = 4; 是 4啊 我是想让他重新加载 现在切换 数据更新后发现不变 我想让他实时更新和后端同步
lixuce1234 2017-05-31
  • 打赏
  • 举报
回复
你可以设置viewpager的预加载个数是4 就不会重新加载了 vp.setOffscreenPageLimit(4);貌似是这个方法 你看一下 应该对你有帮助

80,349

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧