android animation clipToPadding clipChildren

简介: android animation clipToPadding clipChildren

位置的学习

event.getX():表示的是触摸的点距离自身左边界的距离

event.getY():表示的是触摸的点距离自身上边界的距离

event.getRawX:表示的是触摸点距离屏幕左边界的距离

event.getRawY:表示的是触摸点距离屏幕上边界的距离

View.getWidth():表示的是当前控件的宽度,即getRight()-getLeft()





View.getHeight():表示的是当前控件的高度,即getBottom()-getTop()

View.getTop():子View的顶部到父View顶部的距离

View.getRight():子View的右边界到父View的左边界的距离

View.getBottom():子View的底部到父View的顶部的距离

View.getLeft():子View的左边界到父View的左边界的距离

View.getTranslationX()计算的是该View在X轴的偏移量。初始值为0,向左偏移值为负,向右偏移值为正。

View.getTranslationY()计算的是该View在Y轴的偏移量。初始值为0,向上偏移为负,向下偏移为证



View 提供了如下 5 种方法获取 View 的坐标:

1. View.getTop()、View.getLeft()、View.getBottom()、View.getRight();

2. View.getX()、View.getY();

3. View.getTranslationX()、View.getTranslationY();

4. View.getLocationOnScreen(int[] position);

5. View.getLocationInWindow(int[] position);



1. 这四个方法用于获取View相对于父容器的坐标

2. getX()与getY()方法获取的是View左上角相对于父容器的坐标,当View没有发生平移操作时,getX()==getLeft()、getY==getTop()。

3. translationX与 translationY是View左上角相对于父容器的偏移量:translationX = getX() - getLeft(),当View未发生平移操作时,translationX 与translationY都为0。

4. 获取View相对于整个屏幕的坐标。

5. 获取View相对于Window的坐标(忽略状态栏及ActionBar)






2.动画的值

透明度 0-1 透明到不透明

旋转的值是-360-360

平移的值不限制  一般值相对于view的中心

缩放的值0-1从不显示到正常显示  0-2,从不显示放大一倍。



Animation.RELATIVE_TO_PARENT 与 Animation.RELATIVE_TO_SELF  

相对于父布局,相对于自身  





/**

    * Interpolator 定义了动画的变化速度,可以实现匀速、正加速、负加速、无规则变加速等

    * AccelerateDecelerateInterpolator 在动画开始与结束的地方速率改变比较慢,在中间的时候加速

    * AnticipateInterpolator 开始的时候向后然后向前甩

    * AnticipateOvershootInterpolator 开始的时候向后然后向前甩一定值后返回最后的值

    * BounceInterpolator   动画结束的时候弹起

    * CycleInterpolator 动画循环播放特定的次数,速率改变沿着正弦曲线

    * DecelerateInterpolator 在动画开始的地方快然后慢

    * LinearInterpolator   以常量速率改变

    * OvershootInterpolator    向前甩一定值后再回到原来位置

    * */




从Animation类继承的属性

android:duration        动画持续时间,以毫秒为单位

android:fillAfter          如果设置为true,控件动画结束时,将保持动画最后时的状态

android:fillBefore       如果设置为true,控件动画结束时,还原到开始动画前的状态

android:fillEnabled    与android:fillBefore 效果相同,都是在动画结束时,将控件还原到初始化状态

android:repeatCount 重复次数

android:repeatMode重复类型,有reverse和restart两个值,reverse表示倒序回放,restart表示重新放一遍,必须与repeatCount一起使用才能看到效果。因为这里的意义是重复的类型,即回放时的动作。

android:interpolator  设定插值器,其实就是指定的动作效果,比如弹跳效果等


android:fromXScale    起始的X方向上相对自身的缩放比例,浮点值,比如1.0代表自身无变化,0.5代表起始时缩小一倍,2.0代表放大一倍;

android:toXScale        结尾的X方向上相对自身的缩放比例,浮点值;

android:fromYScale    起始的Y方向上相对自身的缩放比例,浮点值,

android:toYScale        结尾的Y方向上相对自身的缩放比例,浮点值;

android:pivotX            缩放起点X轴坐标,可以是数值、百分数、百分数p 三种样式,比如 50、50%、50%p,当为数值时,表示在当前View的左上角,即原点处加上50px,做为起始缩放点;如果是50%,表示在当前控件的左上角加上自己宽度的50%做为起始点;如果是50%p,那么就是表示在当前的左上角加上父控件宽度的50%做为起始点x轴坐标。(具体意义,后面会举例演示)

android:pivotY           缩放起点Y轴坐标,取值及意义跟android:pivotX一样。



android:fromAlpha   动画开始的透明度,从0.0 --1.0 ,0.0表示全透明,1.0表示完全不透明

android:toAlpha       动画结束时的透明度,也是从0.0 --1.0 ,0.0表示全透明,1.0表示完全不透明


rotate标签——旋转

android:fromDegrees     开始旋转的角度位置,正值代表顺时针方向度数,负值代码逆时针方向度数

android:toDegrees         结束时旋转到的角度位置,正值代表顺时针方向度数,负值代码逆时针方向度数

android:pivotX               缩放起点X轴坐标,可以是数值、百分数、百分数p 三种样式,比如 50、50%、50%p,具体意义已在scale标签中讲述,这里就不再重讲

android:pivotY               缩放起点Y轴坐标,可以是数值、百分数、百分数p 三种样式,比如 50、50%、50%pz



translate标签 —— 平移

android:fromXDelta     起始点X轴坐标,可以是数值、百分数、百分数p 三种样式,比如 50、50%、50%p,具体意义已在scale标签中讲述,这里就不再重讲

android:fromYDelta    起始点Y轴从标,可以是数值、百分数、百分数p 三种样式;

android:toXDelta         结束点X轴坐标

android:toYDelta        结束点Y轴坐标





clipToPadding : 取值为boolean类型,默认为true,表示子控件的绘制区域在padding里面(true的情况下如果你设置了padding那么绘制的区域就往里缩)  

false 就会在padding区域绘制。滚动布局用的比较多。


clipChildren : 是否限制子View在其范围内,我们将其值设置为false后那么当子控件的高度高于父控件时也会完全显示,而不会被压缩。其实很简单,只要用了这个神奇的属性后这个效果很容易就可以实现,下面是注意点:

1、只需在根节点设置android:clipChildren为false即可,默认为true,注意:一定是在布局文件的父节点设置,否则不起作用

2、可以通过android:layout_gravity控制超出的部分如何显示

3、android:clipChildren的意思:是否限制子View在其范围内,我们将其值设置为false后那么当子控件的高度高于父控件时也会完全显示,而不会被压缩 。


相关文章
|
XML Android开发 数据格式
|
XML API Android开发
Android 属性动画Property Animation(中)
ValueAnimator指定整形、浮点型或者颜色值作为动画值,在一定时间内平滑过渡。可以通过ofInt(),ofFloat(),或ofObject()来或得一个ValueAnimator
100 0
|
Android开发
Android Animation动画
Android Animation动画
150 0
Android Animation动画
|
XML Java API
Android 属性动画(Property Animation) 完全解析
Android 属性动画(Property Animation) 完全解析
Android 属性动画(Property Animation) 完全解析
|
Android开发
Animation插值器:解决Android Animation 循环执行的停顿问题
在Android开发中,有时候我们需要一个动画一直循环执行下去,常见的如laoding菊花一直旋转,这时候就需要使用Animation的repeat功能
789 0
|
API Android开发
【Android 属性动画】属性动画 Property Animation 与 视图动画 View Animation 区别
【Android 属性动画】属性动画 Property Animation 与 视图动画 View Animation 区别
131 0
|
XML Android开发 数据格式
Android Animation(动画)---基础二(LayoutAnimationController)
LayoutAnimationController动画效果,一次出现 一、布局文件使用 动画list_item_layout.xml 每个列表项动画list_item_alpha.
831 0
|
XML Android开发 数据格式
Android Animation(动画)---基础一
动画分类: 传统动画(帧动画(Frame Animation)/ 补间动画(Tweened Animation))。 属性动画(Attribute Animation) 帧动画 帧动画是将图片一张一张的连续播放,适当的速度,让人感觉是连续的动画。
900 0
|
XML Android开发 数据格式
Android--Animation动画介绍和实现
版权声明:本文为博主原创文章,转载请标明出处。 https://blog.csdn.net/chaoyu168/article/details/72472031 1.
979 0