目录

Android之MotionLayout(一),MotionLayout的基本使用
Android之MotionLayout(二),MotionScene的标签属性说明
Android之MotionLayout(三),用 MotionLayout 来做过渡动画,如何使用ConstraintSet
Android之MotionLayout(四),用 MotionLayout实现向上拉的折叠效果
Android之MotionLayout(五),如何使用 MotionLayout的自定义属性
Android之MotionLayout(六),如果使用Keyframes实现实现YouTube切换效果

MotionLayout 控件只会检测标准属性和ConstraintLayout 属性这类布局相关的属性变动,对于其他的属性变动,如 View 的背景颜色变动是无法检测出来的,因此就需要使用自定义属性

元素中使用 子元素来指定自定义属性。

我们先看下效果:


custom-attribute.gif

第一步我们还是要创建一下布局activity_custom_attr.xml

<?xml version="1.0" encoding="utf-8"?>    

第二步创建scene_custom.xml

<?xml version="1.0" encoding="utf-8"?>                                                                                                

这样就完成了

元素属性说明:

app:attributeName 属性用来指定自定义属性的名字(例如 "backgroundColor")。

注意:关联的 View 必须要有一对与这个名字相关的 getter/setter方法(例如 getBackgroundColor()/setBackgroundColor(int color))

剩下的其他属性都是用来设置自定义属性的值的。需要根据自定义属性的值类型使用以下 XML 属性之一来设置自定义属性的值:

  • app:customColorValue:设置属性的值(颜色类型)。
  • app:customColorDrawableValue:设置属性的值(颜色类型)。
  • app:customIntegerValue:设置属性的值(整数类型)。
  • app:customFloatValue:设置属性的值(浮点类型)。
  • app:customStringValue:设置属性的值(字符串类型)。
  • app:customDimension:设置属性的值(尺寸类型)。
  • app:customPixelDimension:设置属性的值(尺寸类型)。
  • app:customBoolean:设置属性的值(布尔类型)

结语

MotionLayout系列到这一章算是结束了,如果大家想更近一步的学习MotionLayout,这里给大家推荐三篇文章

  • 《「译」MotionLayout 介绍 (part II)》
  • 《「译」MotionLayout介绍 (part III)》
  • 《「译」 MotionLayout 介绍 (Part IV) 深入理解关键帧》

(每天学习一点点.每天进步一点点,分享不宜路过点个赞呀,喜欢的点个关注后续更新不断)

更多相关文章

  1. Android之MotionLayout(一),MotionLayout的基本使用
  2. android 5.0 默认水波纹背景属性,可设置不论什么View
  3. Android(安卓)DrawerLayout 侧边栏使用之道
  4. android ListView嵌套checkbox并取代checkbox点击事件
  5. Android重要控件概览(上)
  6. android设置textview限制字数以省略号显示的方法
  7. android 让一个控件按钮居于底部的几种方法
  8. Android(安卓)动画中共用的属性!
  9. Android(安卓)控件 ListView

随机推荐

  1. Android 音效提示与振动提示
  2. Android 自动完成文本框的实例
  3. android 三种解析,构建xml方法
  4. [GUIDE][SCRIPT] How to root Android x8
  5. android Spinner的使用
  6. Android(安卓)eclipse 签名打包及遇到的
  7. Android Studio中Android Parcelable cod
  8. Android OpenGL 画简单的三角形
  9. android绘制view的过程(自定义view一)
  10. java android 中的Toast