Passing a List to another Activity in Android

后端 未结 3 531
生来不讨喜
生来不讨喜 2020-12-01 16:47

I\'ve created a list and would like to pass the list to another activity but i\'m getting an error on the putExtra statement when i create the intent. Just wondering is ther

3条回答
  •  挽巷
    挽巷 (楼主)
    2020-12-01 17:30

    You can't pass a List in Intent.putExtras(String name, List list);. I think you can use an Array of String and pass it in putExtras like this:

    private List selItemList;
    private ListView mainListView = null; 
    
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.recipes);
    
        Button searchBtn = (Button) findViewById(R.id.searchButton);
        searchBtn.setOnClickListener(new OnClickListener() {
        public void onClick(View v) {
            if (selItemList == null) {
                Toast.makeText(getApplicationContext(), "Please Make A Selection", Toast.LENGTH_SHORT).show();
            } else {
                String[] selItemArray = new String[selItemList.size()];
                // Copy your List of Strings into the Array, and then pass it in your intent
                // ....
                Intent intent = new Intent(Recipes2.this, XMLParser.class);
                intent.putExtra("items_to_parse", selItemArray);
                startActivityForResult(intent, 0);              
            }
        }
    });
    

提交回复
热议问题