我想将多维数组传递给活动
多维数组:
double[][][] speed = new double[][][]
{
{
{ 15, 10 },
{ 16, 12 }
},
{
{ 14, 50 },
{ 18, 51 }
}
};
Bundle mBundle = new Bundle();
mBundle.putSerializable("speed", speed);
Intent myIntent = new Intent(getActivity(), LineChart.class);
myIntent.putExtra("speed", mBundle);
startActivity(myIntent);
要在另一个类(线图类)中接收它,我使用:
private double[][][] _speed;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Get ALL the data!!!
Bundle extras = getIntent().getExtras();
if (extras != null) {
this._speed = extras.getSerializable("speed");
}
setContentView(showLineChart());
}
我收到以下错误:
Type mismatch: cannot convert from Serializable to double[][][]
有人可以解释一下如何做到这一点吗?
答案 0 :(得分:2)
假设你的AActivity和BActivity
在AActivity中,声明变量和以下方法:
private static double[][][] doubleVar;
public static boolean[][][] getDoubleVar()
{
return doubleVar;
}
现在在AActivity中将值赋值给doubleVar。
现在从BActivity,您可以像这样访问doubleVar:AActivity.getDoubleVar()
答案 1 :(得分:0)
您必须将其投放到double[][][]
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Get ALL the data!!!
Bundle extras = getIntent().getExtras();
if (extras != null) {
this._speed = (double[][][]) extras.getSerializable("speed");
}
setContentView(showLineChart());
}