我试图向一个Fragment
传递参数。
点击Fragment
的View
时,我将我的Fragment
替换为另一个,并传递要在下一个Fragment
中使用的数据。
我的点击操作:
public void onClick(View view) {
Bundle args = new Bundle();
args.putSerializable("order", orders.get(position));
OrderDetailFragment orderDetailFragment = new OrderDetailFragment();
orderDetailFragment.setArguments(args);
FragmentManager fragmentManager = ((AppCompatActivity) context).getSupportFragmentManager();
fragmentManager.beginTransaction()
.replace(R.id.order_activity_content_frame, orderDetailFragment)
.addToBackStack("orderDetails")
.commit();
}
但是在我的目标Fragment
中,savedInstanceState
变成了null
。
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
public View onCreateView(LayoutInflater inflater,
ViewGroup container,
Bundle savedInstanceState) {
super.onCreateView(inflater, container, savedInstanceState);
order = (Order) savedInstanceState.getSerializable("order");
View rootView = inflater.inflate(R.layout.fragment_order_details, container, false);
TextView date = (TextView) rootView.findViewById(R.id.order_detail_date);
date.setText((CharSequence) order.getCreatedOn());
return rootView;
}
我无法确定我到底缺少了什么?