我正在向另一个活动发送Arraylist一个Activity,但第二个活动显示空指针和null适配器。怎么解决???感谢。
第一项活动:
Bundle b = new Bundle();
b.putSerializable("array_list", listdata);
Intent movedata = new Intent(getApplicationContext(),Shopping.class);
movedata.putExtras(movedata);
startActivity(movedata);
第二项活动:
Intent intent = this.getIntent();
Bundle bundle = intent.getExtras();
ArrayList<XmlValueModel> listdata = (ArrayList<XmlValueModel>) bundle.getSerializable("array_list");
// ArrayAdapter<XmlValueModel> array = new ArrayAdapter<XmlValueModel>(getApplicationContext(), android.R.layout.simple_list_item_1, list);
listview = (ListView) findViewById(R.id.ListOne);
adapter = new CustomListAdapter(this, listdata);
listview.setAdapter(adapter);
}catch (Exception e){
Log.e("Error:", e.getMessage());
}
答案 0 :(得分:0)
您的XmlValueModel是否可序列化?您应该使用Serializable!
实现XmlValueModelpublic class XmlValueModel implements Serializable {...}
如果XmlValueModel来自库,则从XmlValueModel派生一个新类并实现Serializable。
答案 1 :(得分:0)
尝试这种方式可以帮助您
首先要制作
类XmlValueModel实现Serializable
public class XmlValueModel implements Serializable {
/**
*
*/
private static final long serialVersionUID = 1L;
}
在您的FirstActivity中 这样做
ArrayList<XmlValueModel> XmlValueModelArrayList = new ArrayList<XmlValueModel>();
Intent intent = new Intent(this,secondActivity.class);
intent.putExtra("XmlValueModelArrayList", XmlValueModelArrayList);
在您的SecondActivity中 这样做
ArrayList<XmlValueModel> XmlValueModelList;
XmlValueModelList = (ArrayList<XmlValueModel>) getIntent().getSerializableExtra(
"XmlValueModelArrayList");