如果尚未了解我的问题,请先检查图片。
第一个列表视图位置 0 持有具有10个项目的第二个列表视图,它们都打开一个活动,但根据列表视图显示不同的文本数据从 10个项目中点击该项目。
示例,打开第一个列表视图位置0,并显示第二个列表视图,然后单击第二个列表视图位置0 ,打开一个包含文本数据的活动在textview中。 现在打开第二个活动位置1并打开相同的活动,但是日期已更改。
我不想进行10种不同的活动 。
我尝试了“ put and getextra”,但是没有得到想要的结果。
第一个列表视图
第二个列表视图
ArrayList<MenuItems> items = new ArrayList<>();
ArrayList<MenuItems> task2Item = new ArrayList<>();
//================= First Listview==========
items.add(new MenuItems("Task 1", "Solved graphs"));
items.add(new MenuItems("Voca bulary 1", "Vocabulary related task 1, Structures"));
items.add(new MenuItems("Connectors 1 ", "How to start Essay Task 1, body-paragraph "));
items.add(new MenuItems("Task 2", "Solved essay "));
items.add(new MenuItems("Vocabulary 2", "Vocabulary related task 2, Structures"));
items.add(new MenuItems("Connectors 2 ", "How to start Essay Task 2, body-paragraphs "));
items.add(new MenuItems("Collocation", "Important thing to get high score"));
items.add(new MenuItems("Tips & Tricks", "Best Solutions"));
=========================================================
// listview which is inside first list view 's items ================================================================
task2Item.add(new MenuItems("Crime","This essay about crime"));
task2Item.add(new MenuItems("Education","This essay about Education"));
task2Item.add(new MenuItems("University","This essay about University"));
task2Item.add(new MenuItems("Food","This essay about Food"));
task2Item.add(new MenuItems("Games","This essay about crime"));
task2Item.add(new MenuItems("Experience","This essay about crime"));
task2Item.add(new MenuItems("This is another essay","This essay about crime"));
task2Item.add(new MenuItems("This is another essay","This essay about crime"));
答案 0 :(得分:1)
以这种方式将所需对象设为可拆分对象,并将“传递对象”数组作为自变量:
Intent intent = new Intent(getApplicationContext(),YourActivity.class);
Bundle bundle = new Bundle();
bundle.putParcelable("data", Objects);
intent.putExtras(bundle);
startActivity(intent);
然后您可以按以下方式获取此arrayList:
Bundle bundle = getIntent().getExtras();
Objects = bundle.getParcelable("data");