Android Fragment小记

1、remove,add,replace

remove:移除fragment,被移除的fragment会销毁掉,包括实例和界面。

add:

add(int containerViewId, Fragment fragment)
Calls add(int, Fragment, String) with a null tag.

add(Fragment fragment, String tag)
Calls add(int, Fragment, String) with a 0 containerViewId.

add(int containerViewId, Fragment fragment, String tag)
Add a fragment to the activity state.

replace:等同于remove+add。

说明:往同一个containerViewId中replace会移除掉旧的fragment,包括实例和界面,然后add新的fragment,只会有一个fragment存在。

add会往同一个containerViewId中添加多个fragment,包括实例和界面,后加进去的会叠加在前面的fragment的上面,可以有多个fragment存在。

2、backstack fragment的后退栈

在调用add或者replace方法之后,调用commit方法之前加上addToBackStack会将当前的fragment加入到backstack。

说明:在调用replace方法前,如果某个fragment已加入到后退栈,然后这个时候调用replace被别的fragment替换了,此fragment也就销毁了,但是

还是可以按返回键从后退栈中弹出,其实也就是说fragment和后退栈中的fragment不是一回事。

3、清空backstack方法

popBackStack(null, FragmentManager.POP_BACK_STACK_INCLUSIVE)。

public static final int POP_BACK_STACK_INCLUSIVE

Added in API level 11
Flag for popBackStack(String, int) and popBackStack(int, int): If set, and the name or ID of a back stack entry has been supplied, then all matching entries will be consumed until one that doesn‘t match is found or the bottom of the stack is reached. Otherwise, all entries up to but not including that entry will be removed.

时间: 2024-10-14 21:16:23

Android Fragment小记的相关文章

Android Fragment 真正的完全解析(上)

转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/37970961 自从Fragment出现,曾经有段时间,感觉大家谈什么都能跟Fragment谈上关系,做什么都要问下Fragment能实现不~~~哈哈,是不是有点过~~~ 本篇博客力求为大家说明Fragment如何产生,什么是Fragment,Fragment生命周期,如何静态和动态的使用Fragment,Fragment回退栈,Fragment事务:以及Fragment的一些特

Android Fragment 的使用,一些你不可不知的注意事项

Fragment,俗称碎片,自 Android 3.0 开始被引进并大量使用.然而就是这样耳熟能详的一个东西,在开发中我们还是会遇见各种各样的问题,层出不穷.所以,是时候总结一波了. Fragment 简介 作为 Activity 界面的一部分,Fragment 的存在必须依附于 Activity,并且与 Activity 一样,拥有自己的生命周期,同时处理用户的交互动作.同一个 Activity 可以有一个或多个 Fragment 作为界面内容,并且可以动态添加.删除 Fragment,灵活控

【Android自学日记】【转】Android Fragment 真正的完全解析(下)

上篇博客中已经介绍了Fragment产生原因,以及一些基本的用法和各种API,如果你还不了解,请看:Android Fragment 真正的完全解析(上). 本篇将介绍上篇博客提到的:如何管理Fragment回退栈,Fragment如何与Activity交互,Fragment与Activity交互的最佳实践,没有视图的Fragment的用处,使用Fragment创建对话框,如何与ActionBar,MenuItem集成等~~ 1.管理Fragment回退栈 类似与Android系统为Activi

android fragment 博客 学习记录

转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/37992017 上篇博客中已经介绍了Fragment产生原因,以及一些基本的用法和各种API,如果你还不了解,请看:Android Fragment 真正的完全解析(上). 本篇将介绍上篇博客提到的:如何管理Fragment回退栈,Fragment如何与Activity交互,Fragment与Activity交互的最佳实践,没有视图的Fragment的用处,使用Fragment创

Android Fragment应用实战,使用碎片向ActivityGroup说再见

转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/13171191 现在Fragment的应用真的是越来越广泛了,之前Android在3.0版本加入Fragment的时候,主要是为了解决Android Pad屏幕比较大,空间不能充分利用的问题,但现在即使只是在手机上,也有很多的场景可以运用到Fragment了,今天我们就来学习其中一个特别棒的应用技巧. 很多手机应用都会有一个非常类似的功能,即屏幕的下方显示一行Tab标签选项,点击不

[Android]Fragment源码分析(一) 构造

Fragment是Android3.0之后提供的api,被大家广泛所熟知的主要原因还是因为随即附带的ViewPager控件.虽然我并不喜欢用它,但是它确实是一个相对不错的控件.还是我的一贯作风,我将从源码上向大家展示什么是Fragment.我们先写一个简单的代码对Fragment有个直观的认识:(为了保证我们方便调试,我们可以直接使用V4提供的源码包) FragmentTransaction t = getSupportFragmentManager().beginTransaction();

Android Fragment 嵌套使用报错

在新的SDK每次创建activity时,会自动生成 <pre name="code" class="java">public static class PlaceholderFragment extends Fragment fragment模块,在该模块的基础上进行嵌套fragment代码如下: <pre name="code" class="java">public static class Pla

Android Fragment 生命周期及其API使用

Fragment:( Fragment就相当于一个有生命周期的View,它的生命周期被所在的Activity的生命周期管理 ) 生命周期回调说明: onAttach(Activity)当Fragment与Activity发生关联时调用.onCreateView(LayoutInflater, ViewGroup,Bundle)创建该Fragment的视图onActivityCreated(Bundle)当Activity的onCreate方法返回时调用onDestoryView()与onCrea

Android Fragment 完全解析

参考文章:http://blog.csdn.net/guolin_blog/article/details/8881711 http://blog.csdn.net/guolin_blog/article/details/13171191 Android Fragment应用实战,使用碎片向ActivityGroup说再见 界面如下: 实现步骤: 程序结构: 编写主界面的xml文件 <?xml version="1.0" encoding="utf-8"?&g