第二行代码第四章笔记
来源:互联网 发布:鲍登学院 知乎 编辑:程序博客网 时间:2024/05/12 01:29
第四章 Fragment
Fragment是什么
Fragment是一种可以嵌入在活动当中的UI片段,建议使用support-v4库中的Fragment,因为它可以让Fragment在所有Android系统版本中保存功能一致性。
Fragment的使用方式
Fragment的简单用法
新建两个Fragment布局文件
并在各自的Fragment代码文件中复写
onCreateView()
方法,然后通过LayoutInflater的inflate()
方法将刚才定义的Fragment布局文件动态加载进来。如:View view = inflater.inflate(R.layout.xxx, container, false)
在Activity布局文件中添加两个Fragment控件,同时还需要通过android:name属性来显示指明要添加的Fragment类名,这里一定要将类的包名也加上
动态添加Fragment
创建待添加的Fragment实例
获取FragmentManager,在Activity中科院直接通过调用
getSupportFragmentManager()
方法得到开启一个事物,通过调用
beginTransaction()
方法开启像容器内添加或替换碎片,一般使用
replace()
方法实现,需要传入容器的id和待添加到Fragment实例提交事务,调用
commit()
方法来完成
在Fragment中模拟返回栈,FragmentTransaction中提供了一个addToBackStack()方法,可以用于将一个事物添加到返回栈中
transaction.addToBackStack(null)
Fragment和Activity之间进行通信
Activity中调用Fragment里的方法,调用SupportFragmentManager中
findFragmentById()
方法,可以从活动中得到相应Fragment的实例,然后就能调用Fragment里的方法。如:RightFragment rightFragment = (RightFragment) getSupportFragmentManager().findFragmentById(R.id.right.fragment)
Fragment中调用Activity里的方法,每个Fragment都可以调用
getActivity()
方法来得到和当前Fragment相关联的Activity实例。如:MainActivity activity = (MainActivity) getActivity()
Fragment之间的通信,首先在一个Fragment中得到与他相关联的Activity,然后在通过这个Activity去获取另一个Fragment的实例,这样即实现了Fragment之间的通信功能
Fragment的生命周期
动态加载布局的技巧
- Android中的常见的限定符
- 最小宽度限定符,最小宽度限定符允许我们对屏幕的宽度指定一个最小值(以dp为单位),然后以这个最小值为临界点,屏幕宽度大于这个值的设备就加载这一个布局。如:程序运行在屏幕宽度大于600dp的设备上时,会加载layout-sw600p/activity_main.xml,而程序运行在屏幕宽度小于600dp的设备上时,会加载默认的layout/activity_main.xml
简易版新闻应用——Fragment实践(暂略)
- 第二行代码第四章笔记
- 第二行代码第四章笔记
- 第二行代码第四章笔记
- 第二行代码第二章笔记
- 第二行代码第二章笔记
- 第二行代码第二章笔记
- 第二行代码学习笔记——第四章:手机平板要兼容——探究碎片
- 代码大全第二部分 (包含第四章)
- 第一代码第二版(郭霖著)笔记之第四章(探究碎片)
- 第二行代码第三章笔记
- 第二行代码第五章笔记
- 第二行代码第六章笔记
- 第二行代码第七章笔记
- 第二行代码第八章笔记
- 第二行代码第三章笔记
- 第二行代码第三章笔记
- 第二行代码第九章笔记
- 第二行代码第五章笔记
- ASP.NET的六大内置对象
- 刷清橙OJ--A1057.FJ的字符串
- eclipse中的.project 和 .classpath文件的具体作用
- C++标准库笔记:13.12.1 实作一个Output操作符
- 面试题18. 树的子结构
- 第二行代码第四章笔记
- 【如何校验邮件地址的有效性】第三篇 :原理二
- 《爱》(罗伊·克里夫特)
- Win7系统QQ语音功能无法使用如何解决?
- jQuery UI API
- 一个web项目web.xml的配置中<context-param>配置作用
- bootstrap学习25---列表组
- centos下安装中文输入法问题汇总
- Web.xml配置详解之context-param