錯誤解決:java.lang.IllegalStateException: Can't change tag of fragment TransferFragment

錯誤信息: java.lang.IllegalStateException: Can't change tag of fragment TransferFragment{6e857a4 (3f474cec-7622-4fbd-aeb3-b975f87bbc15) id=0x7f0800ea android:switcher:2131230954:0}: was android:switcher:2131230954:0 now android:switcher:2131230954:1

 

出錯代碼:

        viewPager = findViewById(R.id.viewpager);
        TransferFragment transferFragment = new TransferFragment();
        final List<Fragment> fragments = new ArrayList<>();
        fragments.add(transferFragment);
        fragments.add(transferFragment);
        fragments.add(transferFragment);

 

原因分析:list add的是同一個fragment對象,所以導致pageadapter拋出無法識別切換fragment

解決:實例化多個對象即可

        viewPager = findViewById(R.id.viewpager);
        TransferFragment transferFragment = new TransferFragment();
        TransferFragment transferFragment1 = new TransferFragment();
        TransferFragment transferFragment2 = new TransferFragment();
        final List<Fragment> fragments = new ArrayList<>();
        fragments.add(transferFragment);
        fragments.add(transferFragment1);
        fragments.add(transferFragment2);

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章