我正在制作一个具有2个视图的Android应用程序,该应用程序从Web服务接收数据。
首先询问登录名和密码。然后向Web服务发送活动请求,并且如果有数据,他将创建一个意图,该意图在列表视图中显示数据:
主要
private ArrayList accountlist = new ArrayList();
...
accountlist.add(...)
...
Intent intent = new Intent(Main.this, Second.class);
intent.putExtra("accountlist", accountlist);
intent.putExtra("login", loginEditText.getText().toString());
intent.putExtra("pass", passwordEditText.getText().toString());
startActivity(intent);
第二
private ArrayList accountlist;
...
public void onCreate(Bundle savedInstanceState) {
...
setListAdapter(new ArrayAdapter<String>(this, R.layout.results,accountlist));
...
}
private void refresh() {
...
accountlist.add(...)
setListAdapter(new ArrayAdapter<String>(this, R.layout.results,accountlist));
}
结果是我有要添加到当前列表中的项目(例如,我有2个项目,如果刷新4次,则视图中将有10个项目,而我只希望最后2个项目)
如果您有想法:D
最佳答案
您不能在活动之间直接传递ArrayList,必须通过序列化来访问某种对象。阅读此:How do I pass an object from one activity to another on Android?