Android 再次替换片段时发生异常

Android 再次替换片段时发生异常,android,android-fragments,Android,Android Fragments,我开发了一个应用程序,其中有5个(一般)片段 在主活动中,我通过按下按钮(主活动中的5个按钮)替换片段,每个片段加载到主活动中的FrameLayout中 当我按下1-2-3-4按钮时-没关系,碎片变化的时间更长。。 但是,当我再按5键时,应用程序崩溃,NPE异常 按下更多时间意味着-我点击按钮5,然后点击另一个按钮,然后再次点击按钮5-崩溃 mainActivity中的代码5按钮: FragmentTransaction fragmentTransaction=getSupportFragmen

我开发了一个应用程序,其中有5个(一般)片段

在主活动中,我通过按下按钮(主活动中的5个按钮)替换片段,每个片段加载到主活动中的FrameLayout中

当我按下1-2-3-4按钮时-没关系,碎片变化的时间更长。。 但是,当我再按5键时,应用程序崩溃,NPE异常

按下更多时间意味着-我点击按钮5,然后点击另一个按钮,然后再次点击按钮5-崩溃

mainActivity中的代码5按钮:

FragmentTransaction fragmentTransaction=getSupportFragmentManager().beginTransaction();
fragmentTransaction.replace(R.id.appFragmentContainer, fragmentMyAccount);
fragmentTransaction.commit();
按5键加载的碎片代码: 这是片段,我在其中加载3个片段的页面适配器

<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.view.ViewPager
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/pager"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
</android.support.v4.view.ViewPager>
页面适配器代码:

public class TabPagerAdapter extends FragmentStatePagerAdapter {

    public TabPagerAdapter(FragmentManager fm) {
        super(fm);
    }

    @Override
    public Fragment getItem(int position) {
        switch (position) {
            case 0:
                //Fragement for panic btn settings tab
                return new Fragment_a();
            case 1:
                //Fragment for tracking settings
                return new Fragment_b();
            case 2:
                //Fragment for general settings
                return new Fragment_c();
        }

        return null;
    }

    @Override
    public int getCount() {
        return 3;
    }

    @Override
    public CharSequence getPageTitle(int position) {
        return "Page " + position;
    }

}
我想,当我按下按钮5-加载三个片段(三个片段中的一个),我可以从左到右改变运动手指

谁知道我做错了什么

非常感谢

编辑1: 例外情况

05-01 16:42:00.113    1492-1492/my.app E/AndroidRuntime﹕ FATAL EXCEPTION: main
    java.lang.NullPointerException
            at android.support.v4.app.FragmentManagerImpl.getFragment(FragmentManager.java:585)
            at android.support.v4.app.FragmentStatePagerAdapter.restoreState(FragmentStatePagerAdapter.java:211)
            at android.support.v4.view.ViewPager.onRestoreInstanceState(ViewPager.java:1286)
            at android.view.View.dispatchRestoreInstanceState(View.java:12093)
            at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:2582)
            at android.view.View.restoreHierarchyState(View.java:12071)
            at android.support.v4.app.Fragment.restoreViewState(Fragment.java:465)
            at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:979)
            at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1136)
            at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:739)
            at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1499)
            at android.support.v4.app.FragmentManagerImpl$1.run(FragmentManager.java:456)
            at android.os.Handler.handleCallback(Handler.java:725)
            at android.os.Handler.dispatchMessage(Handler.java:92)
            at android.os.Looper.loop(Looper.java:137)
            at android.app.ActivityThread.main(ActivityThread.java:5041)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:511)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
            at dalvik.system.NativeStart.main(Native Method)

发布你的堆栈跟踪和缺少的相关代码^^-发布你的日志请我已经编辑了帖子。添加带有异常的日志。
05-01 16:42:00.113    1492-1492/my.app E/AndroidRuntime﹕ FATAL EXCEPTION: main
    java.lang.NullPointerException
            at android.support.v4.app.FragmentManagerImpl.getFragment(FragmentManager.java:585)
            at android.support.v4.app.FragmentStatePagerAdapter.restoreState(FragmentStatePagerAdapter.java:211)
            at android.support.v4.view.ViewPager.onRestoreInstanceState(ViewPager.java:1286)
            at android.view.View.dispatchRestoreInstanceState(View.java:12093)
            at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:2582)
            at android.view.View.restoreHierarchyState(View.java:12071)
            at android.support.v4.app.Fragment.restoreViewState(Fragment.java:465)
            at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:979)
            at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1136)
            at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:739)
            at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1499)
            at android.support.v4.app.FragmentManagerImpl$1.run(FragmentManager.java:456)
            at android.os.Handler.handleCallback(Handler.java:725)
            at android.os.Handler.dispatchMessage(Handler.java:92)
            at android.os.Looper.loop(Looper.java:137)
            at android.app.ActivityThread.main(ActivityThread.java:5041)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:511)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
            at dalvik.system.NativeStart.main(Native Method)