2019-12-03 -Colorfilter相关

  • 笔记
    两个速度,一个是刷新绘制屏幕速度,一个是传入新值的数据,两个数据要进行适配,每传入一个数据,则允许屏幕绘制一次,这样做虽然会使动画有暂停,但至少不会出现动画倒退的情况。还应再加一个停止动画绘制的操作。

colorFilter使用

PorterDuff.Mode属性参考

src图是正方形,dst图是圆形

PorterDuff.Mode 效果
Clear 效果为src图与dst图均清除掉
Src 只显示src图
Dst 只显示Dst图
SrcOver src图位于上层
DstOver dst图位于上层
SrcIn 相交的地方显示src图
dstIn 相交的地方显示dst图
SrcOut 显示src不相交的部分
DstOut 显示dst不相交的部分
SrcATop 只在相交部分显示src,其余部分显示dst
DstATop 只在相交部分显示dst,其余部分显示src
Xor src与dst相交部分不显示
Darken 相交部分取较暗值进行混合
Lighten 相交部分取较亮值进行混合
Multiply 显示相交部分,并将靓图混合
Screen 简单的说就是保留两个图层中较白的部分,较暗的部分被遮盖

image的图片属于dst,setcolorfilter传入的color属于src

参考:
各个击破搞明白PorterDuff.Mode


  • Tools attributes

tools 命名空间
功能:

  • xml中的警告处理
  • xml预览
  • 资源压缩

警告处理属性

属性值 作用
tools:ignore 让Lint 工具在检查代码时忽略指定的错误
tools:targetApi 在使用 Lint 检测时就不会因 minSdkVersion 低于控件出现的版本而报错
tools:locale 避免拼写检查或者Lint 检查时报错。

xml预览属性

属性值 作用
用 tools:xxxx 替代 android:xxxx 将view的任意属性值的 android 前缀替换为 tools 之后,就可以实现预览效果。
tools:context 声明该布局文件默认关联的 activity
tools:itemCount 节点中设置该属性之后,会指定在预览界面中绘制/展示几个条目
tools:layout 声明在预览时将哪个布局文件填充到该Fragment
tools:showIn 声明该布局文件将会被哪个布局通过 引用。声明之后,在对应的文件中不要忘了用 引用
tools:menu 声明在预览界面中 AppBar 将展示哪些菜单
tools:minValue / tools:maxValue 为NumberPicker设置预览时的最小值和最大值
tools:openDrawer 在预览界面中将 DrawerLayout 打开。
"@tools:sample/*" 资源 为View设置占位文本或图片。

资源压缩属性

  • 暂未接触

参考:

Android:Tools命名空间原来是有大用处的

你可能感兴趣的:(2019-12-03 -Colorfilter相关)