val constraintSet1 = ConstraintSet()
constraintSet1.clone(rootView2)//拷贝一份 rootView2 作为“动画结束模板”;rootVie2: 动画结束时的 xml 文件
//constraintSet1.clone(baseContext,R.layout.activity_main2)//也可以这么clone
TransitionManager.beginDelayedTransition(rootView)//设置动画插值器
constraintSet1.applyTo(rootView)//应用到 此View = 让view 执行动画;rootView: 此 Activity 的根 View
android
约束
布局
In this tutorial, we’ll be implementing Constraint Layout Animations in our Android Application. 在本教程中,我们将在Android应用程序中实现
约束
布局
动画
。
约束
布局
动画
(Constraint Layout Animation)
We can create beaut...
I .
ConstraintS
et
约束
集 简介
II .
ConstraintS
et
约束
集中封装的
约束
属性及操作 示例
III .
ConstraintS
et
约束
集 初始化方法
IV .
ConstraintS
et
约束
集 应用到
约束
布局
ConstraintLayout 中
V .
ConstraintS
et
关键帧
动画
VI .
ConstraintS
et
关键帧
动画
代码流程
VII .
ConstraintS
et
关键帧
动画
支持的属性
VIII .
ConstraintS
et
关键帧
动画
在传统
布局
方式中,如果要改变某个控件的位置,需要获取 LayoutParams , 后台修改属性值就行了。
但是在
约束
布局
ConstraintLayout 中,要改变控件的
约束
条件,需要用到
ConstraintS
et
类。主要有 5 个步骤
第一步:创建
ConstraintS
et
() 实例
val s
et
=
ConstraintS
et
()
第二步:需要复制一份父
布局
的
约束
,方法有三个如下
s
et
.clone(constraintLayout: ConstraintLayout);
ConstraintS
et
对象中保存了ConstraintLayout里面所有控件的
约束
条件,通过
constraintS
et
.applyTo()方法将修改以后的
ConstraintS
et
应用到ConstraintLayout,可以实现批量更改
约束
条件,并通过。
ConstraintS
et
允许我们动态的修改ConstraintLayout中某些控件的
约束
,并在
约束
改变的时候,为我们添加上
动画
效果。基于center()的再次封装,让一个控件横向、垂直居中与某个控件,效果等同于添加了两个
约束
。...
MainActivity.class
private
ConstraintS
et
constraintS
et
1;
private
ConstraintS
et
constraintS
et
2;
ConstraintLayout constraintLayout;
boolean old = true;
@Override
prot...
如果父View是ConstraintLayout
约束
布局
,当修改某个view时候,直接创建ConstraintLayout.LayoutParams会有问题,没办法直接满足需求。
具体使用步骤
ConstraintS
et
s
et
= new
ConstraintS
et
();
//获取一新的ConstraintLayout
//mConstraintLayout 是你的当前使用的
约束
布局
1. 首先要声明一下
ConstraintS
et
对象private val s
et
=
ConstraintS
et
()
复制代码2. 其次需要复制一份父
布局
的
约束
,方法有三个如下:s
et
.clone(constraintLayout: ConstraintLayout);
s
et
.clone(s
et
:
ConstraintS
et
);
s
et
.clone(context: Context, const...