新特性一览
-
字体,支持在xml中使用自定义字体和提供可下载字体
-
emojis ,提供可以直接解析emoji的三个控件
-
自动调整字体大小(autosize text)
-
物理动画 (physicis-based animation),弹簧动画和抛物动画
-
向量图形(Vector Graphices),FillType 支持和Path动画支持
-
Library 现在最低支持到API 14,减少了1.4k个方法
文本和字体
字体
现在可以好像使用其他资源一样使用字体了,新建一个font文件夹
同时支持downloadable font ,无需把字体打包到APK中,google play service 会自动为我们下载这些字体
emojis 支持
因为系统并不能总是有最新的unicode 编码(可以理解为最新的emoji),Library 为我们提供了3个控件去显示Emoji,EmojiEditText ,EmojiTextView ,EmojiButton。同时也为我们提供了控件的AppCompat版本, AppCompatEmojiEditText, AppCompatEmojiTextView ,AppCompatEmojiButton
自动调整字体大小
<TextView
android:layout_width="match_parent"
android:layout_height-"300dp"
app:autoSizeTextType="uniform"
app:autoSizeMinTextSize="12sp" <!--最小字体大小-->
app:autoSizeMaxTextSize="100sp" <!--最大字体大小-->
app:autoSizeStepGranularity="2sp" <!--步进-->
物理动画(physicis-based animation)
提供两种物理动画,分别是
Spring
弹力动画,类似于facebook 的rebound
Fling
一个扔的动画,可以自定义初始速度,摩擦力,最大最小动画值等
矢量图形(Vector Graphics)
增加了两个Vector Drawable Compat 的属性
FillType
和SVG上的Fill-rule 是一样的,提供两个值,evenOdd和noZero
Path-based interpolator
新加的属性可以支持path间的动画
库和行为更改
-
废除 Percent Support 库,使用ConstraintLayout 代替
-
PrefereceDataStore Api,可以自定义settings的存储方式
-
executePendingTransaction(),commitNow()不在允许在FragmentManager 状态改变的时候调用