Skip to content

在不可见父Fragment中进行pop()单例的子Fragment的操作,这个单例Fragment这个没有消失,还存在栈内 #791

@zyh326162646

Description

@zyh326162646
  • Library version:1.2.6
  • Support-v4 version:27.0.2
    在demo_zhihu中,如果在不可见的父Fragment中去移除他的单例子Fragment,那么这个子Fragment并没有被移除,再次去启动这个Fragment的时候就无法再启动了。具体修改的代码为:
  1. ContentFragment第69行,启动SINGLETAST子Fragment
    mBtnNext.setOnClickListener(new View.OnClickListener() {
    @OverRide
    public void onClick(View v) {
    // 和MsgFragment同级别的跳转 交给MsgFragment处理
    if (getParentFragment() instanceof ShopFragment) {
    ((ShopFragment) getParentFragment()).start(CycleFragment.newInstance(1), SINGLETASK);
    }
    }
    });
  2. MainActivity第77行
    @OverRide
    public void onTabSelected(int position, int prePosition) {
    showHideFragment(mFragments[position], mFragments[prePosition]);
    if (position != 2) {
    onTabReselected(2); // 模拟在不可见Fragment移除子Fragment
    }
    }
    修改完成后进入zhihu demo,点击第三个Tab,点击启动CyclerFragment,然后点击第二个Tab,再点击第三个Tab,再次点击启动CyclerFragment,这时就无法启动这个子Fragment了

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions