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

Eri*_*ong -1 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>();
}
}
Run Code Online (Sandbox Code Playgroud)

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

public class GraphActivity extends Activity 
{

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


}
Run Code Online (Sandbox Code Playgroud)

tq提前.

use*_*637 5

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

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

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

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

  • 关于它是AsyncTask的私有,使列表全局,然后在AsyncTask中更新它们而不是声明它们.然后,你可以在RetrieveActivity.as中使用onPostExecute的更新值,我真的不明白你想要做什么,抱歉^.^ (2认同)