android - Android 发送 ArrayList 对象
问题描述
我很笨拙。
解决我的问题
起源活动
public void marcas(View view) {
ArrayList<Localizacion> object = new ArrayList<Localizacion>(localizaciones);
Intent intent = new Intent(getApplicationContext(), CompraVenta.class);
Bundle args = new Bundle();
args.putSerializable("ARRAYLIST", (Serializable) object);
intent.putExtra("BUNDLE", args);
startActivityForResult(intent, RESPUESTA_ACTIVIDAD);
}
命运活动
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_compra_venta);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
Intent intent = getIntent();
Bundle args = intent.getBundleExtra("BUNDLE");
ArrayList<Localizacion> object = (ArrayList<Localizacion>) args.getSerializable("ARRAYLIST");
loc = object;
enlaceInterfaz();
}
在 Localizacion 类中,我正在实现 Parceable。我的错误是想像在 java 类中使用它们一样使用数组,但这不是它的工作方式。
谢谢大家
解决方案
做你的class
as Parceable
,然后你就可以将该类的对象列表传递给另一个Activity。
class Localizacion implements Parceable {
}
现在将数据发送到另一个Activity
.
intent.putParcelableArrayListExtra("array",object);
在接收方
loc = getIntent().getParcelableArrayExtra("array");
推荐阅读
- javascript - Codeigniter & AJAX - 关闭编辑模式时重置/清除模式表单
- ajax - 在外部 js 文件中使用会话
- java - 'public' 函数暴露了它的 'public/*package*/' 参数类型 SolarEdgeException
- java - 在 Scala 中创建对象并将其添加到列表中
- java - 在下面的多线程程序中出错
- python - 在 matplotlib 上添加不带网格线的刻度标签
- c - 将取消引用的指针的地址传递给字符串偏移量
- java - Spring Boot 从错误响应中删除异常属性
- python - 使用 Pool() 进行 Python 多处理
- java - Eclipse - 基本数组