我的用的TabHost搭建的界面主布局框架 涉及到跳转问题 弥补之前文章的不足
Activity ------ Activity下的Fragment
1、Activity 操作代码
Intent i=new Intent();
i.setClass(HomeItemActivity.this, MainActivity.class);
//参数3 是你要跳转的Fragment id
i.putExtra(“flag”,3);
startActivity(i);
this.finish();
2、 Activity下的Fragment操作代码 可以写在MainActivity下的onResume方法中
Intent intent = getIntent();
int id = intent.getIntExtra(“flag”, 0);
if (id == 3) {
//fragment的切换TabHost 3 代表 跳转到第四个
mTabHost.setCurrentTab(3);
//fragment的切换ViewPager 3 代表 跳转到第四个
viewpager.setCurrentItem(3);
}
就这了 最后2个注释 你用TabHost 搭建的界面 那么就用setCurrentTab
用viewPager 搭建的就用setCurrentItem
可能有些还不明白 我附图解释吧 !尽量一次解决大家的问题!
我的是MainActivity 下用TabHost 加了5个底部Tab 第四个是ShopFragment 目前要从HomeItemActivity 跳转到ShopFragment 下图是MainActivity的代码 mTabHost 是你定义的 加载器 你可以人为MainActivity中的代码是接收器
那么 我们从HomeItemActivity 写出 发送器
就是这么简单 网上看了很多资料 总结出的 思路是:点击跳转 Intent 加一个ID 充当发送器 发送到 负载Fragment的MainActivity 中 写一个相同ID的接收器 在接收器中实现 setCurrentTab 跳转到你想要的Fragment
1、 这个完美解决 跳转后会界面重叠问题
2、这个是最简单的跳转 也不用在ShopFragment 任何操作
3、也不用去定义FragmentManager()
希望能解决大家的问题 其它跳转思路一样!