我将数据传递给片段实例变量,然后在提交时,正在引用该数据。出于某种原因,该字段有时会在提交时被取消。即使应用程序没有旋转,我是否必须以某种方式保留该字段?
将数据传递给片段
Fragment fragment = Fragment.newInstance();
fragment.data= data;
正在创建片段交易
fragmentTransaction.hide(this);
fragmentTransaction.add(R.id.container, fragment);
fragmentTransaction.addToBackStack(backStackClass);
fragmentTransaction.commitAllowingStateLoss();
提交侦听器的数据句柄
private data data;
private OnSingleClickListener submitListener = new
OnSingleClickListener() {
@Override
public void onSingleClick(View v) {
String id = data.getQuestionId; // error occured on this line because data was
// null
});
错误跟踪
Fatal Exception: java.lang.NullPointerException: Attempt to
invoke virtual method 'java.lang.String
com.expa.Data.getQuestionId()' on a null object reference
at com.expa.fragments.Fragment$1.onSingleClick(Unknown Source)
at com.expa.Listener.OnSingleClickListener.onClick(Unknown
Source)