2 animation android scaleanimation
我想用上Scale Animation一个RelativeLayout.我想将图像从左角缩放到右角,即从底部到顶部对角线(从左到右).我使用了以下代码行,但我没有得到理想的结果.任何人都可以用简单的话来解释我的pivotx和pivoty做什么?
ScaleAnimation scale = new ScaleAnimation(0, 1, 1, 0);
Run Code Online (Sandbox Code Playgroud)
我使用以下内容ImageView从左下角到右上角进行动画制作.即从底部到顶部对角线.
img = (ImageView) findViewById(R.id.img);
ScaleAnimation scaleAnim = new ScaleAnimation(
0f, 1f,
0f, 1f,
Animation.ABSOLUTE, 0,
Animation.RELATIVE_TO_SELF , 1);
scaleAnim.setDuration(10000);
scaleAnim.setRepeatCount(0);
scaleAnim.setInterpolator(new AccelerateDecelerateInterpolator());
scaleAnim.setFillAfter(true);
scaleAnim.setFillBefore(true);
scaleAnim.setFillEnabled(true);
img.startAnimation(scaleAnim);
Run Code Online (Sandbox Code Playgroud)
您需要仔细提供数据透视及其值.
在这种情况下,我将简要介绍一下如何使用文档说明:
fromX:在动画开始时应用的水平缩放系数
toX:在动画结束时应用的水平缩放系数
fromY:在动画开始时应用的垂直缩放系数
toY:在动画结束时应用的垂直缩放系数
我们需要从小点开始动画,并希望将其缩放到它的大小.所以fromX并且fromY被视为0f,toX并且toY是1f.
pivotXType:指定应如何解释pivotXValue.Animation.ABSOLUTE,Animation.RELATIVE_TO_SELF或Animation.RELATIVE_TO_PARENT之一.
pivotXValue:对象被缩放的点的X坐标,指定为绝对数字,其中0是左边缘.(当对象改变大小时,此点保持固定.)如果pivotXType为ABSOLUTE,则此值可以是绝对数,否则可以是百分比(其中1.0是100%).
我们希望左下边缘ImageView在整个动画中存在.所以我们使用pivotXType - ABSOLUTE.和0将是整个动画应该存在的点.
pivotYType:指定如何解释pivotYValue.Animation.ABSOLUTE,Animation.RELATIVE_TO_SELF或Animation.RELATIVE_TO_PARENT之一.
pivotYValue:对象被缩放的点的Y坐标,指定为绝对数字,其中0是上边缘.(当对象改变大小时,此点保持固定.)如果pivotYType为ABSOLUTE,则此值可以是绝对数,否则可以是百分比(其中1.0是100%).
ImageView Y轴需要相对于其当前位置进行动画处理.所以pivotYType是,RELATIVE_TO_SELF而1是它的底角.所以底部不会随着缩放而向上移动.
希望这可以帮助.
| 归档时间: |
|
| 查看次数: |
5594 次 |
| 最近记录: |