如何从一个活动传递两个diamentional数组到另一个活动?

问题描述:

我有从一个活动通过我2D串数组另一个活动 我尝试了一些代码的问题......但他们表现出一些错误如何从一个活动传递两个diamentional数组到另一个活动?

我的字符串数组是

String[][] commuterDetails=new String[2][5]; 

commuterDetails= 
{ 
    { "a", "b","c", "d","e" }, 
    {"f", "g","h", "i","j" } 
}; 

我尝试了一些代码

在第一项活动

Intent summaryIntent = new Intent(this, Second.class); 
Bundle b=new Bundle(); 
b.putSerializable("Array", commuterDetails); 
summaryIntent.putExtras(b); 
startActivity(summaryIntent); 

在第二活动

Bundle b = getIntent().getExtras(); 
String[][] list_array = (String[][])b.getSerializable("Array"); 

但它显示错误

Caused by: java.lang.ClassCastException: [Ljava.lang.Object; 

我在Android的新的,请帮我

+0

**没有人给我一个解决方案....谁能回答这个问题... ?? ** – SibinF 2013-02-28 11:22:24

让你commuterDetails在其他活动静态并获得这样

FirstActivity.commuterDetails[][]

+0

我会检查.... – SibinF 2013-02-28 10:39:21

+0

我无法访问此FirstActivity .commuterDetails [] [];它显示出静态变化,但我有一个问题,这个数组的大小是从另一个函数分配的。但我可以从我写的意图和捆绑的方法访问数组元素 – SibinF 2013-02-28 10:44:28

+0

嗨Mudassar Shaheen ...如果你能理解我的问题,请回复 – SibinF 2013-02-28 11:02:48

你可以定义它实现Parcelable并包含逻辑读取和/至包裹写2维数组的自定义类。之后,将该可分类物体放入Bundle内运输。

UPDATE

public class MyParcelable implements Parcelable{ 

public String[][] strings; 

public String[][] getStrings() { 
    return strings; 
} 

public void setStrings(String[][] strings) { 
    this.strings = strings; 
} 

public MyParcelable() { 
    strings = new String[1][1]; 
} 

public MyParcelable(Parcel in) { 
    strings = (String[][]) in.readSerializable(); 
} 

@Override 
public int describeContents() { 
    return 0; 
} 

@Override 
public void writeToParcel(Parcel dest, int flags) { 
    dest.writeSerializable(strings); 

} 
public static final Parcelable.Creator<MyParcelable> CREATOR = new Parcelable.Creator<MyParcelable>() { 

    @Override 
    public MyParcelable createFromParcel(Parcel in) { 
     return new MyParcelable(in); 
    } 

    @Override 
    public MyParcelable[] newArray(int size) { 
     return new MyParcelable[size]; 
    } 
}; 
} 
+0

HI Kapil Vats你能告诉我一个例子吗? – SibinF 2013-02-28 11:01:05

+0

**没人知道这个答案????? ** – SibinF 2013-02-28 11:21:06

+0

thanx Kapil Vats – SibinF 2013-02-28 11:41:43