当前位置: 首页 > 知识库问答 >
问题:

将自定义对象数组传递给android中的另一个活动

幸鸿轩
2023-03-14

我是android编程的新手,我试图将自定义对象数组发送到不同的活动中。在第一个活动中,我有一个函数,它创建一个意图并向其中添加对象数组:

public void openSchedule() {
    Intent nextScreen = new Intent(getApplicationContext(), Schedule.class);
    nextScreen.putExtra("array", tasks);
    startActivity(nextScreen);
}

共有1个答案

米丰
2023-03-14

你和Gson试过吗?

public void openSchedule() {
    Intent nextScreen = new Intent(getApplicationContext(), Schedule.class);
    String arrayAsString = new Gson().toJson(tasks);
    nextScreen.putExtra("array", arrayAsString);
    startActivity(nextScreen);
}

在第二个活动中,将额外的数据解析回列表

public void parseBack(){
    String arrayAsString = getIntent().getExtras().getString("array");
    List<YourType> list = Arrays.asList(new Gson().fromJson(arrayAsString, YourType[].class));
}
 类似资料:
  • 问题内容: 我有两节课。和。 我有一个要在中使用的功能。我当时正在考虑将的引用传递给的构造函数,然后再调用该函数。 那行得通吗?有人可以给我举个例子吗? 提前致谢! 问题答案: 是的,它将起作用。这是一种不错的方法。您只需传递A类的 实例 : 然后您可以拥有:

  • 我创建了一个名为MipMapData的类来保存有关mipmap的信息,它保存维度、数据大小和图像格式。从代码的另一部分,我创建了一个MipMapData对象数组,问题是每次我向数组中添加一个新的MipMapData对象时,数组中所有的mimpamp信息对象都会修改它们的维度字段,当我填充所有数组时,结果是所有对象在其维度字段中的值与添加到数组中的最后一个值相同。我在维度字段上做错了什么? }

  • 我试图学习功能性Kotlin,并编写了以下测试代码: 在REPL中,我可以成功调用“findBorrowerX”: 但是我如何拨打“findBorrowerX2”的电话: 并将迭代的借用器x传递给getName?? 这看起来有关联,但我不确定: Kotlin:如何将一个函数作为参数传递给另一个? 提前感谢您对此的帮助! 编辑: 下面是我想做的等效Scala代码: 也许这在科特林是不可能的?

  • 我尝试使用 如有任何帮助,不胜感激,谢谢。

  • 我正在使用解析网站。 我在中有一个。 并且我需要将值传递给。 所以我创建了一个类实现。 但是,我在类中得到了一个。 如何将传递给另一个活动?

  • 我正在尝试将3D-dulearray传递给另一个活动。我不知道为什么我得到NullpointerException?缺少什么? 主要活动 数据活动(reveiver) 而且我可以肯定的是,3d阵列已经在MainActivity中分配了。我已经测试过了! 如果有人对此有任何解决方案,并且可以回答为什么我得到NullPointerException,那将是很高兴的。 (编辑:NullpointerEx