android开发中fragment与activity之间相互跳转的问题
来源:互联网 发布:c语言培训学校 编辑:程序博客网 时间:2024/05/29 18:34
小菜鸟最近在参加第五届中国大学生外包服务大赛的大神手下打杂,偶然之间遇到了fragment与activity之间跳转的问题,费劲力气(毕竟能力有限)终于给解决了,也分享出来我的方法,希望得到更多大神的指点。
一,从activity向fragment跳转。
在学习android开发时,做界面跳转的范例是两个activity之间的跳转,代码是这样的:
Intent intent = new Intent(MainActivity.this, FragmentBottomTabPager.class);startActivity(intent);
但是如果用到fragment上则会出问题。举例如下:
点击第一张图最上的按钮向个人信息页面跳转,这个代码可以在其所属的fragment中完成:
Intent intent = new Intent(getActivity(),myInfo.class);startActivity(intent);
此处与实例代码不同之处在于是调用了getActivity()方法,因为fragment不是一个activity,多个fragment是放在同一个activity中通过tabhost来切换的。所以此处参数选择获取所在的activity,将fragment与activity的切换变成两个activity之间的切换。
二,由activity向fragment切换。还是上两张图,这里的情形是要从第二张图回到第一张图。
首先在跳转起点的activity中Button的监听函数中写这么一段代码:
Intent intent = new Intent(myInfo.this, FragmentBottomTabPager.class);intent.putExtra("fragid", 3);startActivity(intent);
然后,在组织着多个fragment的activity中onCreate函数中这样写:
if (savedInstanceState != null) {mTabHost.setCurrentTabByTag(savedInstanceState.getString("tab"));}Intent intent = this.getIntent();int id = intent.getIntExtra("fragid",-1);if (id==3){mTabHost.setCurrentTab(2);
事先定义mTabHost:
private FragmentTabHost mTabHost;
两端代码的意思是,在myInfo这个activity向fragmentbottomTabPager这个activity跳转时,intent里面加入了一个名为“fragid”,值为3的参数;
在fragmentbottomTabPager这个activity中声明一个fragmentTabHost的实例mTabHost,然后实例化获取到的intent,取出里面的参数,如果没有则返回-1,如果参数相符,则调用setCurrentTab方法,设置当前的fragment。
1 1
- android开发中fragment与activity之间相互跳转的问题
- android开发之fragment与activity之间相互跳转
- Android开发中如何实现外部其他Activity类与指定fragment碎片的相互跳转
- Android开发中如何实现外部其他Activity类与指定fragment碎片的相互跳转
- Android开发中如何实现外部其他Activity类与指定fragment碎片的相互跳转
- Android混合开发之Activity类与html页面之间的相互跳转(并解决黑屏问题)
- Android混合开发之Activity类与html页面之间的相互跳转(并解决黑屏问题)
- Android混合开发之Activity类与html页面之间的相互跳转(并解决黑屏问题)
- Android混合开发之Activity类与html页面之间的相互跳转(并解决黑屏问题)
- Android混合开发之Activity类与html页面之间的相互跳转(并解决黑屏有关问题)
- Android混合开发之Activity类与html页面之间的相互跳转
- Android混合开发之Activity类与html页面之间的相互跳转之PhoneGap
- Fragment与Activity之间的相互通信
- Fragment与Activity之间的相互通信
- 安卓中view、activity、fragment之间的相互跳转
- fragment与activity之间的跳转实现
- android开发中fragment的引用以及fragment与activity之间通信的概述
- android开发fragment、Activity与Activity之间的值传递
- OCP 1Z0 053 205
- 随笔——梦想
- Windows NT Session 的遍历和获取信息(原创)
- dancing links
- bzoj1968 [Ahoi2005]COMMON 约数研究
- android开发中fragment与activity之间相互跳转的问题
- android属性之layout_weight深入研究
- 封装、继承、多态
- 构建前端app开发生态-前言
- php __set 和 __get方法使用介绍
- Android动态逆向分析工具ZjDroid--脱壳神器
- RMQ算法
- 公钥,私钥,证书
- Java反射机制