1.Fragment的生命周期一定要了解清楚:

其实没有什么好说的。

注意关键字所执行的方法:

注意下面基本fragmentTransaction.replace();运行

当FragmentA(初始化)和FragmentB(后启动的) "新建" 、"显示" 、"隐藏"、“结束” 时调用了那些方法.(按顺便从左到右)

  "新建"  (onAttach->onCreate->onCreateView->onActivityCreated)

  "显示"  (onStart->onResume)

  "隐藏"  (onPause->onStop)

  “结束”  (onDestroyView->onDestroy->onDetach)

  FragmentA "打开"--->执行 "新建"  再执行FragmentA 的"显示"

  FragmentB "打开"--->执行FragmentA "隐藏"  再才执行FragmentA “关闭” 执行 Fragment B "新建"  再执行Fragment B 的"显示"

  FragmentB "关闭"--->执行FragmentB "隐藏"  再才执行FragmentB “关闭” 最后执行FragmentA 的"显示"

如果不清楚这几点的生命周期,对控制开发Fragment的操作非常有影响。

2. 就是FragmentActivity进行控制Fragment。

  关键点: 要不要执行 fragmentTransaction.addToBackStack(null); (通俗点说: 可以返回  还是  不可以返回)

  如果要可以返回的话。在 "自身" 调用 fragmentTransaction.commit(); 之前加上上面那句话。

  注意 是 "自身" 的。

  因为很多时。为了统一调用方法,就傻乎乎的去调用别人的接口,也不知道别人里面写什么。

  结果自己调试N久都不知道什么情况。

3. 在一个Fragment A 嵌入另一个 Fragment B 时. 究竟启动Fragment B时要放在生命周期中的哪个方法呢。

(如果放不好的话,Fragment B 在可以返回的情况下,无法关闭 Fragment A和连带的Fragment B)

   在上面生命周期中说到 "新建" 、"显示" 、"隐藏"、“结束” 这4个词。

   在这4个词中。在Fragment中只会执行一次的就只有 "新建" 和 “结束” 。

   用脑子想想都知道不可能放在“结束”中的方法,所以只能放在"新建"的方法中的 随便一个。

4.如何使用Fragment来处理逻辑而动态显示页面。

  首先,加载一个Fragment方式有以下几种:

  1.add(Fragment fragment, String tag)

    用于加载不用显示UI的Fragment ,不过需要加入标记字符

  2.add(@IdRes int containerViewId, Fragment fragment);

    一看就知道将fragment绑定在UI上containerViewId的显示。

  3.add(@IdRes int containerViewId, Fragment fragment,@Nullable String tag);

    这个又要标记。又要绑在UI上的方式。(我个人用的是最少了)

  相信各位自己已经知道自己要用哪一种方式加载fragment了。

5.

Android 关于Fragment一些简单注意事项的更多相关文章

  1. Android开发——Fragment的简单使用总结

    前言: 之前搞项目的时候,就使用了这个Fragment,中间遇到了许多坑,把坑都解决了,现在写一篇较为简单的Fragment使用总结 Fragment的简单介绍: 简单来说,Fragment其实可以理 ...

  2. 【Android】Fragment的简单笔记

    被虐了,做某公司笔试时,发现自己连个Fragment的生命周期都写不详细.平时敲代码,有开发工具的便利,有网上各大神的文章,就算忘了也很容易的可以查到,但当要自己不借助外界,却发现自己似乎对该知识点并 ...

  3. Android中Fragment的简单介绍

    Android是在Android 3.0 (API level 11)引入了Fragment的,中文翻译是片段或者成为碎片(个人理解),可以把Fragment当成Activity中的模块,这个模块有自 ...

  4. Android中Fragment和ViewPager那点事儿(仿微信APP)

    在之前的博文<Android中使用ViewPager实现屏幕页面切换和引导页效果实现>和<Android中Fragment的两种创建方式>以及<Android中Fragm ...

  5. Android中Fragment的两种创建方式

    fragment是Activity中用户界面的一个行为或者是一部分.你可以在一个单独的Activity上把多个Fragment组合成为一个多区域的UI,并且可以在多个Activity中再使用.你可以认 ...

  6. android之Fragment基础详解(一)

      一.Fragment的设计哲学 Android在3.0中引入了fragments的概念,主要目的是用在大屏幕设备上--例如平板电脑上,支持更加动态和灵活的UI设计.平板电脑的屏幕比手机的大得多,有 ...

  7. Android使用Fragment来实现ViewPager的功能(解决切换Fragment状态不保存)以及各个Fragment之间的通信

    以下内容为原创,转载请注明:http://www.cnblogs.com/tiantianbyconan/p/3364728.html 我前两天写过一篇博客<Android使用Fragment来 ...

  8. Android之Fragment(二)

    本文主要内容 如何管理Fragment回退栈 Fragment如何与Activity交互 Fragment与Activity交互的最佳实践 没有视图的Fragment的用处 使用Fragment创建对 ...

  9. Android之Fragment(一)

    Fragment的产生与介绍 Android运行在各种各样的设备中,有小屏幕的手机,超大屏的平板甚至电视.针对屏幕尺寸的差距,很多情况下,都是先针对手机开发一套App,然后拷贝一份,修改布局以适应平板 ...

随机推荐

  1. Lucene底层原理和优化经验分享(1)-Lucene简介和索引原理

    Lucene底层原理和优化经验分享(1)-Lucene简介和索引原理 2017年01月04日 08:52:12 阅读数:18366 基于Lucene检索引擎我们开发了自己的全文检索系统,承担起后台PB ...

  2. V-rep学习笔记:main script and child scripts

    The main and child scripts The main script and the child scripts, which are simulation scripts, play ...

  3. python之模块hashlib(提供了常见的摘要算法,如MD5,SHA1等等)

    # -*- coding: utf-8 -*- #python 27 #xiaodeng #python之模块hashlib(提供了常见的摘要算法,如MD5,SHA1等等) #http://www.c ...

  4. Memcacher win7 安装测试

    1.下载memcache 的windows 稳定版,解压放某个盘下面,比如在H:/wamp/www/php api/memcache: 2.在终端(即cmd 命令界面)下,输入安装命令 :H:/wam ...

  5. Struts2常见配置(草稿)

    Struts2框架配置文件加载的顺序(了解加载配置文件的顺序,重点掌握struts.xml配置文件) 1.Struts2框架的核心是StrutsPrepareAndExecuteFilter过滤器,该 ...

  6. [转]深入理解Java之线程池

    原文链接 原文出处: 海 子 在前面的文章中,我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题: 如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这 ...

  7. 我的Maven POM配置

    刚刚把项目从Ant转到Maven,费了好多劲,主要是对Maven边用边学.问题主要集中在项目结构上不太一样,在程序的访问上也有区别,调试和打包等也和原来不太一样.终于折腾完一个可以正常运行的POM配置 ...

  8. MATLAB 的unique函数——数组矩阵的唯一值

    MATLAB 的unique函数——求数组矩阵的唯一值 相关MathWork文档见此:unique数组中的唯一值 1.C = unique(A) 返回与 A 中相同的数据,但是不包含重复项.C 已按照 ...

  9. 搭建HBase+thrift+php环境

    http://www.beauty-soft.net/blog/ceiba/hadoop/2013-05-19/644.html http://www.360doc.com/content/11/07 ...

  10. 记录:js删除数组中某一项或几项的几种方法(转)

    1:js中的splice方法 splice(index,len,[item])    注释:该方法会改变原始数组. splice有3个参数,它也可以用来替换/删除/添加数组内某一个或者几个值 inde ...