Fragment 1.2.0 更新记录
1.官方地址
https://developer.android.com/jetpack/androidx/releases/fragment
2.引入方法
dependencies {
def fragment_version = "1.2.5"
// Java language implementation
implementation "androidx.fragment:fragment:$fragment_version"
// Kotlin
implementation "androidx.fragment:fragment-ktx:$fragment_version"
// Testing Fragments in Isolation
debugImplementation "androidx.fragment:fragment-testing:$fragment_version"
}
3.版本 1.2.0
2020 年 1 月 22 日 发布了
androidx.fragment:fragment:1.2.0androidx.fragment:fragment-ktx:1.2.0androidx.fragment:fragment-testing:1.2.0
版本 1.2.0 中包含以下提交内容。(自 1.1.0 以来的重要变更)
- FragmentContainerView:我们强烈建议使用
FragmentContainerView容器来存储动态添加的 Fragment,而不要使用FrameLayout或其他布局。FragmentContainerView 同样支持class、android:name和可选的android:tag(这与<fragment>标记相同),但会使用常规的FragmentTransaction来添加此初始 Fragment,而不会添加<fragment>使用的自定义代码路径。 onDestroyView()调用时机:Fragment 现在会等到退出动画、退出框架转换和退出 AndroidX 转换(使用 Transition1.3.0时)完成后再调用onDestroyView()。- 基于类的
add()和replace():在FragmentTransaction中添加了add()和replace()的新重载,这些重载采用Class<? extends Fragment>和Bundle(可选)参数。这些方法使用您的FragmentFactory来构造要添加的 Fragment 的实例。此外,还向fragment-ktx中添加了使用具体化类型(例如fragmentTransaction.replace<YourFragment>(R.id.container))的 Kotlin 扩展程序。 - Lifecycle ViewModel SavedState 集成:现在将
by viewModels()、by activityViewModels()、ViewModelProvider构造函数或ViewModelProviders.of()与 Fragment 一起使用时,会使用SavedStateViewModelFactory作为默认出厂设置。 - 新的 Lint 检查:添加了新的 Lint 检查,以确保您在从
onCreateView()、onViewCreated()或onActivityCreated()观察LiveData时使用getViewLifecycleOwner()。 - 弃用
getFragmentManager():弃用了关于 Fragment 的getFragmentManager()和requireFragmentManager()方法,并替换为单个getParentFragmentManager()方法,后者会返回添加了 Fragment 的非 nullFragmentManager(您可以使用isAdded()来确定是否可以安全调用该方法)。 - 弃用
FragmentManager.enableDebugLogging():弃用了静态FragmentManager.enableDebugLogging方法。FragmentManager 现在遵循FragmentManager标记的Log.isLoggable(),以允许您启用DEBUG或VERBOSE日志记录,而无需重新编译应用。
已知问题
- ProGuard 不会自动保留仅通过
FragmentContainerView上的class或android:name属性引用的 Fragment,需要您为每个 Fragment 类手动添加保留规则。 - 通过
FragmentContainerView使用class或android:name在 XML 文件中添加NavHostFragment时,您无法在 Activity 的onCreate()中使用findNavController()。
Fragment 1.2.0 更新记录的更多相关文章
- ASP.NET Core 1.0 开发记录
官方资料: https://github.com/dotnet/core https://docs.microsoft.com/en-us/aspnet/core https://docs.micro ...
- 更新记录后关闭子窗口并刷新父窗口的Javascript
有时我们需要在新打开的窗口里面编辑信息,等编辑完了,需要将当前窗口关闭并且刷新父窗口,以使修改生效,本文就是介绍用 javascript 来实现"更新记录后关闭子窗口并刷新父窗口" ...
- Android常用控件之Fragment仿Android4.0设置界面
Fragment是Android3.0新增的概念,是碎片的意思,它和Activity很相像,用来在一个Activity中描述一些行为或部分用户界面:使用多个Fragment可以在一个单独的Activi ...
- Dynamics CRM2016 Web API之更新记录
本篇继续探索web api,介绍如何通过web api更新记录. 下面是一段简单的更新代码,更新了几个不同类型的字段,entity的赋值和前篇创建时候的一样的. var entity = {}; en ...
- 浅谈Android Studio3.0更新之路(遇坑必入)
>可以参考官网设置-> 1 2 >> Fantasy_Lin_网友评论原文地址是:简书24K纯帅豆写的我也更新一下出处[删除]Fa 转自脚本之家 浅谈Android Studi ...
- asp.net core 3.0 更新简记
asp.net core 3.0 更新简记 asp.net core 3.0 更新简记 Intro 最近把活动室预约项目从 asp.net core 2.2 更新到了 asp.net core 3.0 ...
- 4.修改更新源sources.list,提高软件下载安装速度(提供Kali 2.0 更新源)
1.切换到root用户(如果已经是root用户就直接看第二步) dnt@HackerKali:~$ su 密码: 2.用文本编辑器打开sources.list,手动添加下面的更新源 root@Hack ...
- V4.0到来了,css雪碧图生成工具4.0更新啦
V3.0介绍 http://www.cnblogs.com/wang4517/p/4476758.html V4.0更新内容 V4.0下载地址:http://download.csdn.net/det ...
- MicroERP软件更新记录1.1
MicroERP软件更新记录 最新版本:1.1 1.增加固定资产检修.租赁.转移记录 2.增加产品质检单 3.增加零售单(收银台) 4.支持各种主流关系型数据库 5.完善了数据字典,如加入原材料材质. ...
随机推荐
- Spring Boot打包瘦身 Docker 使用全过程 动态配置、日志记录配置
springBoot打包的时候代码和jar包打包在同一个jar包里面,会导致jar包非常庞大,在不能连接内网的时候调试代码,每次只改动了java代码就需要把所有的jar包一起上传,导致传输文件浪费了很 ...
- 程序员必须了解!IntelliJ IDEA 2020.2的新增功能
IDEA 因为之前破解过,所以家里的电脑都是19版本的,用的也比较顺手,也就一直懒得去动他,但是,程序猿的好奇心可能真的挺重,猎奇心里,在网上也看到了很多关于2020版本的idea的各种好处,于是,闲 ...
- C#LeetCode刷题之#561-数组拆分 I(Array Partition I)
问题 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/3718 访问. 给定长度为 2n 的数组, 你的任务是将这些数分成 ...
- 在线快速创建SpringBoot项目
都2020年了,你还在手动创建SpringBoot项目吗?今天教你在线快速创建一个SpringBoot项目,瞬间高大上有木有! 进入正题,首先打开创建SpringBoot的官网:https://sta ...
- Node学习基础之安装node以及配置环境变量
第一步去node官网下载nodejs 我放在D盘 接着在cmd输入node -v 就能得到node的版本号 还有npm -v 下来进入安装好的目录 nodejs目录 创建两个文件夹 node_cach ...
- you-get的一点修改
一直用you-get这个python写的开源软件下载一些视频网站的视频(主要是太烦不断插入的广告),最近看了点python,就对于自己觉得不够方便的地方,尝试修改.因为感觉他的github上提交修改建 ...
- 微服务技术栈:API网关中心,落地实现方案
本文源码:GitHub·点这里 || GitEE·点这里 一.服务网关简介 1.外观模式 客户端与各个业务子系统的通信必须通过一个统一的外观对象进行,外观模式提供一个高层次的接口,使得子系统更易于使用 ...
- 在.NET Core中使用MongoDB明细教程(3):Skip, Sort, Limit, Projections
到目前为止,我们已经讨论了创建文档, 检索文档,现在让我们来研究一下文档排序,指定要跳过或限制返回的文档数量,以及如何进行投影.此篇文章中的实例代码摘录自原文,未像前几篇文章一样进行实际代码的验证. ...
- leetcode刷题记录——哈希表
1.两数之和 可以先对数组进行排序,然后使用双指针方法或者二分查找方法.这样做的时间复杂度为 O(NlogN),空间复杂度为 O(1). 用 HashMap 存储数组元素和索引的映射,在访问到 num ...
- get customer attribute option
Mage::getResourceSingleton('customer/customer')->getAttribute('gender')->getSource()->getAl ...