创建一个用于更改片段的自定义类

huangapple 未分类评论47阅读模式
英文:

Create a custom class for change fragment

问题

我正在尝试创建一个自定义类来处理更改片段。然而,我无法获取片段管理器以执行更改片段。我尝试的方法是将该类扩展为FragmentActivity,并使用getSupportFragmentManager()来获取片段管理器。然而,它返回了Fragment manager not attached to host错误。

有什么想法可以获取正确的片段管理器来执行更改片段?我应该扩展到另一个类吗?

public class ChangeFragment extends FragmentActivity {

    public void changeFragment() {
        Fragment f = new MyCustomFragment();
        FragmentManager fragmentManager = getSupportFragmentManager();
        FragmentTransaction ft = fragmentManager.beginTransaction();
        ft.replace(R.id.nav_host_fragment, f);
        ft.addToBackStack(null);
        ft.commit();
    }
}
英文:

I am trying to create a custom class to handle change fragment. However, I cannot get the fragment manager in order to execute change fragment. What I have tried is to extend the class to FragmentActivity and get the fragment manager by using getSupportFragmentManager(). However, it returns error with Fragment manager not attached to host

Any idea that I can get the correct fragment manager to execute changing fragment? should I extend to another class?

public class changefragment extends FragmentActivity{

     public void ChangeFragment(){
        

        Fragment f = new MyCustomFragment();
        FragmentManager fragmentManager = getSupportFragmentManager();
        FragmentTransaction ft = fragmentManager.beginTransaction();
        ft.replace(R.id.nav_host_fragment,f);
        ft.addToBackStack(null);
        ft.commit;

    }
}

huangapple
  • 本文由 发表于 2020年5月4日 09:45:55
  • 转载请务必保留本文链接:https://java.coder-hub.com/61583962.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定