Fragment在xml中但作用不是显示view
2013-12-17
有时候会发现在xml文件中有使用fragment,但是却不是为了显示View,代码如下:
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".AnimTest" > <fragment
android:id="@+id/loader_fra"
class="com.example.sdtest.LoadInXmlFragment"
android:layout_height="0dip"
android:layout_width="0dip"
android:visibility="gone"/> <ImageView
android:id="@+id/welcome_image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/phone"
tools:ignore="ContentDescription" /> </FrameLayout>
可以看到上面xml文件中有LoadInXmlFragment,那我们来看看当进入和退出Activity时Activity和LoadInXmlFragment的生命周期, log如下:
// Enter Activity:
D/David-Activity( 7378): onCreate
D/David-Fragment( 7378): onAttach
D/David-Activity( 7378): onAttachFragment
D/David-Fragment( 7378): onCreate
D/David-Fragment( 7378): onCreateView
D/David-Fragment( 7378): onActivityCreated
D/David-Activity( 7378): onStart
D/David-Fragment( 7378): onStart
D/David-Activity( 7378): onResume
D/David-Fragment( 7378): onResume
// Exist Activity:
D/David-Fragment( 7378): onPause
D/David-Activity( 7378): onPause
D/David-Fragment( 7378): onStop
D/David-Activity( 7378): onStop
D/David-Fragment( 7378): onDestroy
D/David-Activity( 7378): onDestroy
D/David-Fragment表示LoadInXmlFragment中打印的log;
D/David-Activity表示Activity中打印的log;
可以看到Fragment基本是随着Activity执行自己的生命周期函数,因此这样使用Fragment的好处是:
1. 由于Fragment的上面周期和Activity保持一致,因此可以利用其完整的生命周期,将某些需要在Activity特定生命周期中执行的操作放在Fragment里面;
2. 保证较好的编码风格;
3. 目前就想到这么多,希望大家补充;
这种方式在Phonebook应用中很常见。
Fragment在xml中但作用不是显示view的更多相关文章
- web.xml中listener作用及使用
一.WebContextLoaderListener 监听类 它能捕捉到server的启动和停止,在启动和停止触发里面的方法做对应的操作! 它必须在web.xml 中配置才干使用,是配置监听类的 二. ...
- pom.xml中properties作用
可以在properties下声明相应的版本信息,然后在dependency下引用的时候用${spring-version}就可以引入该版本jar包了 <properties> <sp ...
- Android自己定义控件而且使其能够在xml中自己定义属性
为什么要自己定义View android开发中自己定义View的优点是显而易见的.比方说以下的这个顶部导航,它被设计出如今应用的每一个界面,但每次的内容却不尽同样.我们不能在每一个layout资源中都 ...
- web.xml中welcome-file-list的作用
今天尝试使用struts2+ urlrewrite+sitemesh部署项目,结果发现welcome-file-list中定义的欢迎页不起作用: <welcome-file-list> & ...
- web.xml中load-on-startup的作用
如下一段配置,熟悉DWR的再熟悉不过了:<servlet> <servlet-name>dwr-invoker</servlet-name> <ser ...
- web.xml中load-on-startup的作用(转)
web.xml中load-on-startup的作用 如下一段配置,熟悉DWR的再熟悉不过了:<servlet> <servlet-name>dwr-invoker< ...
- web.xml 中配置了error-page但不起作用问题
问题: 在web.xml 中配置了 error-page,但是好像不起作用,就是跳转不到指定的页面. 配置信息如下: <!-- 400错误 --> <error-page> & ...
- web.xml 中<context-param>与<init-param>的区别与作用
<context-param>的作用: web.xml的配置中<context-param>配置作用 1. 启动一个WEB项目的时候,容器(如:Tomcat)会去读它的配置文件 ...
- (转)web.xml中的contextConfigLocation在spring中的作用
(转)web.xml中的contextConfigLocation在spring中的作用 一.Spring如何使用多个xml配置文件 1.在web.xml中定义contextConfigLocat ...
随机推荐
- Java中的AWT进阶
围棋 package ch11; /** * Created by Jiqing on 2016/12/4. */ import java.awt.*; import javax.swing.*; i ...
- Linux系统负载排查
参考 http://www.ruanyifeng.com/blog/2011/07/linux_load_average_explained.html 在Linux系统中,我们一般使用uptime命 ...
- PO BO VO DTO POJO DAO 概念及其作用
PO BO VO DTO POJO DAO 概念及其作用(附转换图) 博客分类: java javadaovopojobo J2EE开发中大量的专业缩略语很是让人迷惑, 特别是对于刚毕业 ...
- overridePendingTransition动画只设置一个
退出动画可以设置为0, 但是两个动画的duration需要一样. 退出动画:<?xml version="1.0" encoding="utf-8"?&g ...
- Android布局_布局概述和LinearLayout布局
一.布局概述: 布局为UI提供了一个可视化的结构,比如对于一个activity或者app widget的UI,你可以用两种方式声明布局: 在XML中声明UI元素 在运行时实例化布局元素(在java代码 ...
- nfs服务器设置
前段时间重新装了一下Linux系统,结果导致NFS服务器总是挂在不成功,于是粗略学习了一下: NFS服务需要两个软件包: 1.nfs-utiles-* 2.portmap-* nfsd:它是基本的NF ...
- 如何将根文件系统制作成yaffs格式,并设置从yaffs启动
1.利用mkyaffs2image 工具,将根文件系统打包成yaffs镜像包 mkyaffs2image-128M root_qtopia root_qtopia.img 2.设置uboot参数boo ...
- 20160816_Redis一些资料
1.官网 http://redis.io/ 2.一个教程 http://www.yiibai.com/redis/redis_quick_guide.html 3.快速开始指南(Quick Start ...
- JavaScript高阶函数的应用
定义 高阶函数是指至少满足下列条件之一的函数: 函数可以作为参数被传递: 函数可以作为返回值输出. JavaScript语言中的函数显然满足高阶函数的条件,在实际开发中,无论是将函数当作参数传递,还是 ...
- window下安装nodejs
下载nodejs 去https://nodejs.org/en/download/下载nodejs,有.mis(安装版)和.exe(二进制版) .mis(安装版) 一般下载这个就行,简单方便,自带np ...