您的位置:首页 > 移动开发 > Objective-C

ObjectAnimator不包含百分比移动的替代方法

2015-08-21 16:18 447 查看
因为种种原因,不能用v4包下的fragment,只能用android.app包里的,所以不能用旧版的动画,只能用ObjectAnimator。但是ObjectAnimator是不包含百分比移动的,所以对于不同手机,会产生不同的动画效果。fragment只能传入资源文件(int),所以也不能通过代码改写动画后传入。

我找到了一种替代方法。

ObjectAnimator所针对的是最外层view。它能对任何set和get方法进行操作。

所以基本思路就是自己写一个viewgroup,在里面添加get和set方法,然后将它用作fragment的最外层viewgroup。

但是这样写之后会有一个问题,就是动画会闪一下再进行。

问题在于动画开始早于view measured。

原文“The problem is that custom fragment animation starts before our layout is measured. It means that our
getHeight()
is
'0' thus
translationY
is
'0' as well when it should be 100%.”

所以加一个检测是否measured即可。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: