【发布时间】:2019-02-14 02:44:16
【问题描述】:
MainFragment 将数据传递给 ActivityContentFragment,但出现“java.io.Serializable android.os.Bundle.getSerializable(java.lang.String)' on a null object reference”的错误
主要碎片
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
ActivityInfo activityInfo =(ActivityInfo) listView.getItemAtPosition(position);
Fragment fragment = new Fragment();
FragmentManager fm = getFragmentManager();
FragmentTransaction fragmentTransaction = fm.beginTransaction();
fragmentTransaction.replace(R.id.content,new ActivityContentFragment());
Bundle bundle = new Bundle();
bundle.putSerializable("eventName",activityInfo);
fragment.setArguments(bundle);
fragmentTransaction.commit();
}
});
}
活动内容片段
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_activity_content, container, false);
activityInfo= (ActivityInfo)getArguments().getSerializable("eventName");
Log.d("why","eventName="+ activityInfo.eventName);
return view;
}
ActivityInfo 类
public class ActivityInfo implements Serializable {
public String eventName;
public String date;
public String review;
public String toString(){
return this.eventName;
}
}
【问题讨论】: