通常我们使用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类型,基本下意识的就会认为是传入百分比,但其实不是,以后遇到方法不起作用的,还是仔细看看方法注释吧~