5

我已经存储ArrayList<Double>在我的 bean 类中,

我的主要活动有豆类,

如何将ArrayList<Double>我的主要活动传递给另一个活动。?

我的数组列表是双倍的。如何传递双数组列表?

4

4 回答 4

15

这个可以帮你...

public Intent putParcelableArrayListExtra (String name, ArrayList<? extends Parcelable> value)

有关更多信息,请查看putParcelableArrayListExtra

编辑:

如果你有double[]那么你可以使用

void putDoubleArray(String key, double[] value)捆绑类..

将双精度数组值插入此 Bundle 的映射中,替换给定键的任何现有值。并将此捆绑包传递给 Intent to Other Activity。

更新:2

第一活动:

Intent intent = new Intent(this, OtherActivity.class);
ArrayList<Double> listDouble = new ArrayList<Double>();
listDouble.add(1111.00000);
listDouble.add(13331.00000);
intent.putExtra("arraylist", listDouble);
startActivity(intent);

其他活动:(检索双 ArrayList)

ArrayList<Double> listDouble = (ArrayList<Double>) getIntent().getSerializableExtra("arraylist");
System.out.println("...serialized data.." + listDouble);
于 2012-07-25T11:09:49.193 回答
1

请参考以下方法将数据从一个活动传递到另一个活动

例如 1

putIntegerArrayListExtra(String name, ArrayList<Integer> value)
putParcelableArrayListExtra(String name, ArrayList<? extends Parcelable> value)
putStringArrayListExtra(String name, ArrayList<String> value)
putCharSequenceArrayListExtra(String name, ArrayList<CharSequence> value)

然后,您可以通过将 put 替换为 get 并将键字符串作为参数来读取您的下一个活动,例如

myIntent.getStringArrayListExtra("array");

例如 2

Intent i = new Intent(this,name.class);
Bundle b = new Bundle();
b.putIntegerArrayListExtra(String name, ArrayList<Integer> value);
//b.putParcelableArrayListExtra(String name, ArrayList<? extends Parcelable> value);
//b.putStringArrayListExtra(String name, ArrayList<String> value);
i.putExtra(String name,b);
startActivity(i);
于 2012-07-25T11:13:57.287 回答
0

您应该考虑通过 Intent Extras 将参数传递给其他活动:

Intent.putExtra() 
于 2012-07-25T11:09:15.327 回答
0

此代码将演示如何通过 inent 将双数组对象传递给其他活动

String [] my_dblArray=new Sting[no];
   //put some value in the array and then pass through intent
Intent intnt=new Intent(this,YourReqActivity.class);            
Bundle bundle = new Bundle();
bundle.putDoubleArray("doubleVal",my_dblArray);  
intnt.putExtra(bundle);
startActivity(intnt);

// 在 Receiver 端放置这行代码。

 String [] dblval=Bndl.getDoubleArray("doubleVal");
于 2012-11-21T17:05:44.360 回答