活动内部不同的片段实例

时间:2016-05-29 13:32:05

标签: android android-fragments recycler-adapter

我们要编写一个应用,在应用用户的一个部分中输入Activity,称之为PostDetailsActivity

在此活动中,我们有一个片段称为PostDetailsFragment。我们应用Interface在此片段与活动之间进行通信

public interface changeFragment{
    void replaceFragment(Fragment fragment, String backStack);
}

PostDetailsFragment我们有帖子及其相关帖子。在recyclerview中列出的相关帖子是一个适配器。当用户点击适配器中的Item时,adaoter的行为如下:

PostDetailsFragment fragment = PostDetailsFragment.newInstance(GsonString);
mListener.replaceFragment(fragment, fragment.getFragmentKey());

在活动中我们的行为如下:

@Override
public void replaceFragment(Fragment fragment, String backstackName) {

    if(fragment instanceof PostDetailsFragment){
        fragmentPostDetails = (PostDetailsFragment) fragment;
    }

    FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction();
    fragmentTransaction.replace(R.id.fragment_container, fragment);
    fragmentTransaction.addToBackStack(backstackName);
    fragmentTransaction.commitAllowingStateLoss();

}

我们正在做什么:我们创建一个Activity,如果用户点击相关帖子,则活动只需用新数据将PostDetailsFragment的新实例替换为片段。

问题:在五次或更多次之后,App崩溃并导致OoutOfMemory错误!

我也是MAT figure 1 enter image description here

我们应如何解决此问题?

0 个答案:

没有答案