Android新控件之MotionLayout 动画管理布局之KeyFrameSet关键位置<四>

效果.gif

MotionLayout 是一种布局类型,可帮助您管理应用中的运动和微件动画。MotionLayoutConstraintLayout 的子类,在其丰富的布局功能基础之上构建而成。作为 ConstraintLayout 库的一部分,MotionLayout 可用作支持库,并可向后兼容 API 级别 14。

接下来梳理KeyFrameSet 关键帧部分的内容

  1. KeyPosition关键点 控制动画期间的布局位置

  2. KeyAttribute关键属性 控制动画期间的后期布局特性

  3. KeyCycle 关键周期 控制动画期间后期布局特性位置的振荡

  4. KeyTimeCycle 关键时间周期 Controls oscillations with respect to time of post layout properties during animation

  5. KeyTrigger 关键触发器 在动画过程中,在固定点触发对代码的回调

本章节主要梳理 KeyPosition KeyAttribute

KeyPosition : 关键点控制动画期间的布局位置,在动画的关键位置改变View的一些状态

KeyPosition 的属性说明

motionTarget :根据View的Id 绑定的目标View

framePosition :沿插值的点 0 = 开始 100 = 结束

transitionEasing : 定义从该点开始制作动画时要使用的缓动曲线(例如,curve(1.0,0,0, 1.0))或关键字 {standard | 加速 | 减速 | 线性 }

pathMotionArc : 路径将以弧(四分之一椭圆)移动 关键词 {startVertical | 开始水平 | 翻转 | 没有任何 }

keyPositionType : 如何计算此关键帧对线性路径的偏差{DeltarRelative | pathRelative | parentRelative}

percentX percentY : (浮动)沿Y,X轴(DeltarRelative)或垂直于pathRelative中的路径从起点到终点的距离百分比
...

KeyAttribute 关键属性 控制动画期间的后期布局特性

使用

实现上图效果图的 MotionScene.xml




    
        
        
        
        
        
        
        
        
        
        
            

            
            
            
            
            







        
    

    
        
            
        
    

    
        
            
        
    



总结

KeyFrameSet 动画中关键帧的一些方法属性说明 着重说了KeyPosition 其他的关键属性暂时没研究后期看有时间搞没得,再学学习

参考文献

1.Google的MotionLayout介绍说明

2.MotionLayout的文档简介

3.MotionLayout 源码地址

4. 源码地址

你可能感兴趣的:(Android新控件之MotionLayout 动画管理布局之KeyFrameSet关键位置<四>)