View设置setPivotX()setPivotY()锚点无效原因

Posted Ever69

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了View设置setPivotX()setPivotY()锚点无效原因相关的知识,希望对你有一定的参考价值。

通常我们使用ObjectAnimator对View设置缩放或旋转动画时,

需要对View设置动画锚点,也就是调用View的setPivotX()、setPivotY(),但是设置完后发现没有效果,这是为啥呢?

相信很多人在调用上面两个方法时想当然的就把锚点的百分比当做参数传了进去(比如我),结果人家要的并不是百分比。。

/**
* @param pivotX The x location of the pivot point.
*/
public void setPivotX(float pivotX) 
        /.../

方法注释写的很清楚,要的是锚点X轴的位置,比如有个View宽度是200像素,如果我想设置它执行动画的锚点是宽度的一半,那么我就需要传入参数100。然后就好了,就这么简单。。

其实它这个设置锚点方法的参数类型也是误导人,看到float类型,基本下意识的就会认为是传入百分比,但其实不是,以后遇到方法不起作用的,还是仔细看看方法注释吧~

以上是关于View设置setPivotX()setPivotY()锚点无效原因的主要内容,如果未能解决你的问题,请参考以下文章

Android-View是否可见设置

Android:为啥要设置可见性(View.GONE);或 setVisibility(View.INVISIBLE);不工作

Android-View是否可见设置

IOS设置View的背景图片

Android-View是否可见设置

android view怎么设置位置