java - 如何从 PreviousActivity 将 Intent Extras 传递给 Activity viewpager 中的多个片段
问题描述
我有两个活动Activity A 和 B。Activity B 包含 viewpager,它有两个片段Fragment I和Fragment II。我正在寻找一种解决方案,将两个单独的意图额外内容(即意图 extras_one和意图额外内容)从活动 A 传递到 B,并在片段 I 中加载第一个意图额外内容,在片段II 中加载第二个意图额外内容。
这可能吗。
这是我在活动 B 中的查看器
ViewPager viewPager = (ViewPager) findViewById(R.id.pager);
ViewPagerAdapter adapter = new ViewPagerAdapter(getSupportFragmentManager());
adapter.addFragment(new Home(), "Fragment I");
adapter.addFragment(new Grade(), "Fragment II");
viewPager.setAdapter(adapter);
TabLayout tabLayout = (TabLayout) findViewById(R.id.tabs);
tabLayout.setupWithViewPager(viewPager);
}
我现在使用 case 语句在活动 A 中传递参数。
case 0:
Intent math_strt = new Intent(itemView.getContext(), MainActivity.class);
math_strt.putExtra(EXTRA_URL, "https://api.myjson.com/bins/16mecx");
itemView.getContext().startActivity(math_strt);
break;
提前致谢。
解决方案
是的,您可以将数据传递给片段,但不使用意图,而是使用捆绑包,因此必须对代码进行一些修改。试试下面的代码片段
Bundle bundle1,bundle2;
ViewPager viewPager = (ViewPager) findViewById(R.id.pager);
ViewPagerAdapter adapter = new ViewPagerAdapter(getSupportFragmentManager());
Home frag1 = new Home();
Grade frag2 = new Grade();
bundle1 = new Bundle();
bundle1.putString("key",data); //pass the data you want to pass
bundle2 = new Bundle();
bundle2.putString("key",data);
frag1.setArguments(bundle1);//set arguments require a bundle
frag2.setArguments(bundle2);//set arguments require a bundle
adapter.addFragment(frag1, "Fragment I");
adapter.addFragment(frag2, "Fragment II");
viewPager.setAdapter(adapter);
TabLayout tabLayout = (TabLayout) findViewById(R.id.tabs);
tabLayout.setupWithViewPager(viewPager);
//Inside the fragments create another bundle
Bundle b = getIntent().getExtras();
String data = b.getString("key");
推荐阅读
- html - 如何摆脱悬停下拉菜单旁边的空白?
- vb.net - Gecko could not fill facebook post text area by Setattribute
- asterisk - Asterisk 自动拨号和播放录音
- angular - Angular6 HttpClient 无法获取 Json
- scala - 使用 scala 创建自定义外壳
- flutter - 如何去除材质 PageView 组件中的飞溅?
- arcgis - arcgis hotkey work outside of map
- responsive-design - Responsive semantic ui grid with form not working
- python - Calling variable from external file multiple times in python
- android - Android:右侧汉堡图标,左侧导航视图?