Fragment基本介绍
1.生命周期

onCreateView() :创建视图
onActivityCreate():activity创建完成的时候调用
onDestoryView():销毁视图
onDetach():与activity解除绑定
2.静态使用
2.1 继承fragment(android.app.Fragment)
2.2 直接在布局文件中使用
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"> <fragment
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/fragment1"
android:name="example.com.fragmentdemo.OneFragment"
/> </RelativeLayout>
3.动态使用
步骤:
1.创建fragment
2.通过getFragmentManager()方法得到FragmentManager
3.开启一个事务,beginTransaction()
4.添加、移除、替换、隐藏、显示fragment,add/remove/replace/hide/show
5.提交事务,commit();
manager.beginTransaction().add(R.id.fl,twoFragment).commit();
如果要实现类似于返回栈的效果,在commit()前 调用addToBackStack()方法
manager=getFragmentManager();
manager.beginTransaction().add(R.id.fl,twoFragment).addToBackStack(null).commit();
replace()方法会使fragment视图销毁 执行onpause()/onStop()/onDestoryView()
remove()方法会使fragment销毁 执行onpause()/onStop()/onDestoryView()/onDesdory()/onDecath()
hide()/show()不会执行其他的生命周期
锁屏 onPause()/onStop() 锁屏恢复:onStart()/onResume()
4.携带数据
1.在Fragment中创建newInstance方法,使Fragment携带参数
public static OneFragment newInstance(String txt){
OneFragment oneFragment=new OneFragment();
Bundle bundle=new Bundle();
bundle.putString("param",txt);
oneFragment.setArguments(bundle);
return oneFragment;
}
2.声明Fragment
oneFragment=OneFragment.newInstance("oneFragment");
3.在Fragment的onCreateView()中获取参数
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, Bundle savedInstanceState) {
Log.d(TAG, "onCreateView: ");
View view=inflater.inflate(R.layout.fragment_one,container,false);
if(getArguments()!=null){
Bundle bundle=getArguments();
String str= bundle.getString("param");
Log.e("OneFragment","onCreateView(OneFragment.java:48):"+str);
}
return view;
}
Fragment基本介绍的更多相关文章
- Android开发之Fragment的介绍、使用及生命周期
Fragment官网介绍-http://developer.android.com/guide/components/fragments.html 郭大神的使用实例文章:http://blog.csd ...
- Android Fragment的介绍与使用(案例Demo)
应用场景: 众所了解Android上的界面展示都是通过Activity实现的,可是Activity也有它的局限性,相同的界面在手机上显示可能非常好看,在平板上就未必了.为了让界面能够在平板上更好地展示 ...
- Fragment之介绍(转)
http://www.cnblogs.com/plokmju/p/3239265.html 前言 开门见山开篇名义,本篇博客将讲解一下Android中Fragment的内容,必要的地方会提供相应的演示 ...
- Android Fragment 基本介绍
Fragment 源码:http://www.jinhusns.com/Products/Download/?type=xcj Android是在Android 3.0 (API level 11)开 ...
- Android Fragment 基本介绍[转]
Fragment Android是在Android 3.0 (API level 11)开始引入Fragment的. 可以把Fragment想成Activity中的模块,这个模块有自己的布局,有自己的 ...
- 【转】Android Fragment 基本介绍--不错
原文网址:http://www.cnblogs.com/mengdd/archive/2013/01/08/2851368.html Fragment Android是在Android 3.0 (AP ...
- android的fragment基本介绍
可以分为下面的几部分: 使用支持库 创建一个Fragment 创建一个动态UI 多个Fragment之间的通信 1.使用支持库 如果您的应用需要运行在3.0及以上的版本,可以忽略这部分内容. 如果您的 ...
- [原]Android Fragment 入门介绍
Fragment Fragment 产生,优点,用途,使用方法简介 1 Fragmeng简介 自从Android 3.0中引入fragments 的概念,根据词海的翻译可以译为:碎片.片段.其上的是为 ...
- fragment的介绍与使用
稍稍摘录一段Fragment.java中的说明文档. /** * A Fragment is a piece of an application's user interface or behavio ...
随机推荐
- LVS+Keepalived搭建
LVS+Keepalived搭建 原理说明 (推荐): http://www.cnblogs.com/likehua/archive/2014/06/19/3796849.html http://ou ...
- 解决jenkins拉取报告没有样式的问题(还没试过)
来源: https://testerhome.com/topics/9476 对于测试报告来说,除了内容的简洁精炼,样式的美观也很重要.常用的做法是,采用HTML格式的文档,并搭配CSS和JS,实现自 ...
- 【转】 Pro Android学习笔记(九三):AsyncTask(2):小例子
目录(?)[-] 继承AsyncTask UI操作接口 使用AsyncTask 文章转载只能用于非商业性质,且不能带有虚拟货币.积分.注册等附加条件.转载须注明出处:http://blog.csdn. ...
- AngularJS:指令
ylbtech-AngularJS:指令 1.返回顶部 1. AngularJS 指令 AngularJS 通过被称为 指令 的新属性来扩展 HTML. AngularJS 通过内置的指令来为应用添加 ...
- Vue.js:条件与循环
ylbtech-Vue.js:条件与循环 1.返回顶部 1. Vue.js 条件与循环 条件判断 v-if 条件判断使用 v-if 指令: v-if 指令 在元素 和 template 中使用 v-i ...
- zabbix snmp 协议监控 dell iRDAC
转摘:http://blog.csdn.net/wanglei_storage/article/details/52789921 http://blog.csdn.net/wanglei_storag ...
- 013. MVC5过滤器
微软提供了4中过滤器: 1.Action过滤器: 在Action方法执行之前和Action方法执行之后, 会执行此过滤器中的代码. 比如在执行public ActionResult Index()方法 ...
- popup功能
urls: #!/usr/bin/env python3 # -*- coding: utf-8 -*- from django.conf.urls import url from chapter01 ...
- Python 小练习一
1.如果同一个ip地址60s之内访问超过200次,那么就把ip加入黑名单 需求分析: 1.60s读一次文件 2.分割,取第一个元素,ip地址 3.把所有ip加入到一个list里面,如果ip次数超过20 ...
- 【codevs2822】爱在心中
题目描述 Description “每个人都拥有一个梦,即使彼此不相同,能够与你分享,无论失败成功都会感动.爱因为在心中,平凡而不平庸,世界就像迷宫,却又让我们此刻相逢Our Home.” 在爱的国度 ...