Android ViewPager2库在暂停事件上抛出Transactiontoolarge异常。
创始人
2024-08-19 04:30:13
0

Android ViewPager2库在暂停事件上抛出TransactionTooLarge异常通常是由于数据量过大导致的。

解决该问题的方法是使用Bundle将数据保存在Fragment的arguments中,而不是直接传递大量数据。下面是一个代码示例:

  1. 在创建Fragment时,将数据保存在arguments中:
public class MyFragment extends Fragment {
    private static final String ARG_DATA = "data";

    public static MyFragment newInstance(ArrayList data) {
        MyFragment fragment = new MyFragment();
        Bundle args = new Bundle();
        args.putStringArrayList(ARG_DATA, data);
        fragment.setArguments(args);
        return fragment;
    }

    // ...
}
  1. 在Fragment中获取数据:
public class MyFragment extends Fragment {
    private static final String ARG_DATA = "data";
    private ArrayList mData;

    @Override
    public void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        if (getArguments() != null) {
            mData = getArguments().getStringArrayList(ARG_DATA);
        }
    }

    // ...
}
  1. 在ViewPager2的适配器中使用newInstance方法创建Fragment:
public class MyAdapter extends FragmentStateAdapter {
    private ArrayList> mDataList;

    public MyAdapter(@NonNull FragmentActivity fragmentActivity, ArrayList> dataList) {
        super(fragmentActivity);
        mDataList = dataList;
    }

    @NonNull
    @Override
    public Fragment createFragment(int position) {
        ArrayList data = mDataList.get(position);
        return MyFragment.newInstance(data);
    }

    @Override
    public int getItemCount() {
        return mDataList.size();
    }
}

通过以上方法,可以避免在ViewPager2暂停事件中传递大量数据而导致TransactionTooLarge异常的问题。

相关内容

热门资讯

透视游戏!德扑之星软件模拟器,... 透视游戏!德扑之星软件模拟器,WPK其实真的有挂,总结教程(有挂规律)-哔哩哔哩;(需添加指定薇75...
实测教程!pokernow怎么... 实测教程!pokernow怎么加注(辅助挂)其实真的有挂2025已更新)(哔哩哔哩)是一款可以让一直...
6分钟攻略!大唐麻将有规律(透... 6分钟攻略!大唐麻将有规律(透视)外挂透视辅助软件(2021已更新)(哔哩哔哩);无聊就玩这款真的有...
一分钟了解(gg扑克软件)软件... 相信很多朋友都在电脑上玩过gg扑克软件吧,但是很多朋友都在抱怨用电脑玩起来不方便。为此小编给大家带来...
教学盘点!智星德州有挂吗(辅助... 您好,智星德州这款游戏可以开挂的,确实是有挂的,需要了解加微【841106723】很多玩家在这款游戏...
7分钟了解!微扑克算正规平台,... 7分钟了解!微扑克算正规平台,德扑线上创建房间反正真的有挂,解密教程(有挂技巧)-哔哩哔哩;实战中需...
两分钟普及!欢乐麻将助手神器,... 两分钟普及!欢乐麻将助手神器,呼包鄂麻将胡一把能操作输赢,详细教程(新版有挂)(1)两分钟普及!欢乐...
玩家必看科普(WPKplus)... 玩家必看科普(WPKplus)外挂透明挂辅助器(透视)透视辅助(2020已更新)(哔哩哔哩)1、让任...
一分钟秒懂!德州aapoker... 一分钟秒懂!德州aapoker俱乐部正确打法,WPK存在原来是真的有挂,解说技巧(有挂详情)-哔哩哔...
玩家必用!aapoker辅助(... 您好,aapoker这款游戏可以开挂的,确实是有挂的,需要了解加微【487309276】很多玩家在这...