一、fragment和activity之间的数据传递
今天在做项目的时候使用fragment报错了,错误为java.lang.InstantiationException: can't instantiate class com.excmple.fragment.OrderFragment; no empty constructor,追究了很久,才发现是new MyFragment时候构造方法报错了,原来fragment是不能通过构造方法传递的,他的传递方法如下:
1、在activity中写出传递参数的公共方法,例如:
public ArrayList<OrderBean.orderData> getordersList(){ return ordersList; }
2、在OrderFragment继承自fragment里面复写onCreate方法,在getactivity中强制类型转换并获取,如下:
@Override public void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); ctx = getActivity(); ordersList = ((MyOrderActivity)getActivity()).getordersList(); }