获取有意图的数据时发生java错误
我是一个问题,我觉得没有办法解决它(我都试过了)。 我做了Parcelable类,目的是发送一组对象。在第一个活动中,我发送了这个对象数组。在第二个活动中,我发送了一个完整的,在第三个活动中我接收。 事实证明,在捕获整个过程时,它给了我一个错误,没有任何应用程序打开,你不理解,关闭,因为我得到的错误是第三个未能这样做的活动。如果我在terce中注释这行以获取整个活动,请不要误解我的意思,而且我还可以很好地传递带有对象的数组。但我还需要第二项活动的全部内容。 留下代码看看你怎么想
发送ob数组。第一项活动
> //creamos el intent y le pasamos la clase a mostrar
Intent i = new Intent(this, MainActivity.class);
Bundle contenedor= new Bundle();
//le cargamos al bundle un objeto parceable que se almacenara
//bajo la key "array" y contendrá nuestra lista
contenedor.putParcelable("array",lista_musica);
//cargamos el intent con el bundle
i.putExtras(contenedor);
//lanzamos el intent
startActivity(i);
发送整个第二个活动
Intent ii=new Intent(Generos.this,MainActivity.class);
ii.putExtra("sentGeneroId", generoId);
星触觉(ii)
从第三个活动中收集数据
Bundle b = getIntent().getExtras();
if (b != null) {
lista_musica = b.getParcelable("array");
generoId = (Integer) b.get("sentGeneroId");
}
Log.i("mi error","el generoID: "+generoId);
Log.i("mi error","el ARRAY del main: "+lista_musica);
Parcelable类不会认为这是错误的,正如我前面提到的行
generoId = (Integer) b.get ("sentGeneroId");
不会给我错误并正确地向我发送对象数组。我什么都试过了。我设法不让我在那一行未注释错误,但第三个活动中的数组总是空的,但不再是空的,或者我做了什么。。。。。。。。。。。。。 你看,如果我认识的视力更好的人失败了。 谢谢
# 1 楼答案
试试这个方法,希望这能帮助你解决问题
在第二个活动中,您将慷慨ID作为Stringout-sideBundle传递,因此直接从Intent而不是Intent Bundle获取该值
# 2 楼答案
似乎第一个活动在发送对象数组时,会自动开始从第三个活动接收数据。当然,在第二次活动之前,没有收到全部信息。将其标记为错误,尝试获取某些内容,而不获取任何内容。 我尝试将第一个数组发送到第二个活动,它所做的是启动第二个活动,绕过第一个。 到目前为止,我还没有发现这个问题