如何将ArrayList从另一个活动转移到另一个活动

时间:2014-07-31 02:29:38

标签: java android arraylist

我的RetrieveActivity.java中有一个arraylist,我想将它转移到另一个GraphActivity.java活动。我需要那个arraylist数据来在我的GraphActivity中制作图表。

这是我的RetrieveActivity.java代码

public class RetrieveActivity extends Activity 
{

    @Override
    protected void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_retrieve);
    }
private class MyAsyncTask extends AsyncTask<String, Void, String>
{   



    public ArrayList<String> tempList=new ArrayList<String>();
    public ArrayList<String> dataList=new ArrayList<String>();
    public ArrayList<String> atList=new ArrayList<String>();
    public ArrayList<String> timeList=new ArrayList<String>();
}
}

所以我想把arraylist数据传给GraphActivity。

public class GraphActivity extends Activity 
{

    @Override
    protected void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_graph);    
    }


}
提前tq。

3 个答案:

答案 0 :(得分:5)

在RetrieveActivity类中,执行以下操作:

Intent intent = new Intent(RetrieveActivity.this, GraphActivity.class);
intent.putStringArrayListExtra("list1", mArrayList1);
intent.putStringArrayListExtra("list2", mArrayList2);
intent.putStringArrayListExtra("list3", mArrayList3);
startActivity(intent);

然后在GraphActivity中,执行此操作以检索列表:

Intent i = getIntent();  
ArrayList<String> newList1 = i.getStringArrayListExtra("list1");
ArrayList<String> newList2 = i.getStringArrayListExtra("list2");
ArrayList<String> newList3 = i.getStringArrayListExtra("list3");

答案 1 :(得分:0)

您也可以将ArrayLists声明为

public static ArrayList<String> tempList=new ArrayList<String>();

在GraphActivity中,您可以使用

ArrayList newList1 = RetrieveActivity.tempList;`

答案 2 :(得分:0)

晚回答,但很好 声明一个实现Parcelable的对象,实现所有方法。 在编写读写方法时请注意并小心,所有变量的使用方式必须相同。 然后,用数据填充该对象,并将该对象添加到ArrayList中,该对象的类型为您先前创建的对象。

然后创建intent和Bundle,并将其放入其中

          Intent intentTest = new Intent(MainActivity.this, Calculation.class);
            data.putParcelableArrayList("test",  Razlike);
            intentTest.putExtra("dataS", data);
            //Log.i("intentCheck",String.valueOf(intentTest.getParcelableArrayListExtra("test").size()));
            startActivity(intentTest);

在其他活动中读到的就是全部

快乐的编码

相关问题