Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/350.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/202.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将自定义对象数组传递给android中的另一个活动_Java_Android_Arrays - Fatal编程技术网

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

Java 将自定义对象数组传递给android中的另一个活动,java,android,arrays,Java,Android,Arrays,我是android编程新手,我正在尝试向不同的活动发送一组自定义对象。在第一个活动中,我有一个创建意图并向其中添加对象数组的函数: public void openSchedule() { Intent nextScreen = new Intent(getApplicationContext(), Schedule.class); nextScreen.putExtra("array", tasks); startActivity(nextScreen); } 但是,

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

public void openSchedule() {
    Intent nextScreen = new Intent(getApplicationContext(), Schedule.class);
    nextScreen.putExtra("array", tasks);
    startActivity(nextScreen);
}
但是,我不知道如何在下一个屏幕上获取数据


即使“任务”是一个自定义对象数组,有没有办法在下一个活动的代码中获取该数组?

您没有搜索太多

选中此项以查看可包裹界面:

编辑:
这也是,

您没有搜索太多

选中此项以查看可包裹界面:

编辑:
这也是,

让您的自定义对象实现,以便利用
意图
类。

让您的自定义对象实现,以便利用
意图
类。

您尝试过吗

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

public void parseBack(){
字符串arrayastring=getIntent().getExtras().getString(“数组”);
List List=Arrays.asList(新的Gson().fromJson(arrayaString,YourType[].class));
}
你试过了吗

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

public void parseBack(){
字符串arrayastring=getIntent().getExtras().getString(“数组”);
List List=Arrays.asList(新的Gson().fromJson(arrayaString,YourType[].class));
}

查看此链接查看此链接完美解决方案。哈哈,差点忘了此链接。可悲的是,我甚至在我的应用程序的其他部分使用Gson将我的对象数组保存在共享首选项中:/+1'因为你提醒了我这一点,这对我很有用。但是我需要将对象存储在数组列表中,而不是常规列表中。我需要如何编辑这段代码才能这样做?@VaskoVasilev只需删除
数组。asList
就会得到一个数组。它仍然会给出不兼容的类型错误。返回的值是:“com.example.pogolemotoproektce.Classes.Book[]”Perfect solution.Lol,差点忘了这个。可悲的是,我甚至在我的应用程序的其他部分使用Gson将我的对象数组保存在共享首选项中:/+1'因为你提醒了我这一点,这对我很有用。但是我需要将对象存储在数组列表中,而不是常规列表中。我需要如何编辑这段代码才能这样做?@VaskoVasilev只需删除
数组。asList
就会得到一个数组。它仍然会给出不兼容的类型错误。返回的值是:“com.example.pogolemotoproektce.Classes.Book[]”
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));
}