Android Support Library v26 已正式发布

1,739 阅读1分钟

新特性一览

  • 字体,支持在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版本, AppCompatEmojiEditTextAppCompatEmojiTextView ,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 状态改变的时候调用