Android:如何对一个矩形进行动画处理

5

我在互联网上四处搜索,但没有找到什么有用的信息。

我正在尝试制作一个动画矩形,使其长度改变。当它移动到下一个长度时,我希望它能够动态地过渡到新的长度。

我绘制矩形的代码如下:

    Paint rectanglePaint = new Paint();
    rectanglePaint.setARGB(255, 0, 0, 255);
    rectanglePaint.setStrokeWidth(2);
    rectanglePaint.setStyle(Style.FILL);

    Rect rectangle = new Rect(1, 1, 200, 20);
    canvas.drawRect(rectangle, rectanglePaint);

然而我不确定如何将ScaleAnimation添加到上述内容中。我还希望仅通过Java代码生成。有人可以帮忙吗?
1个回答

0

你应该将带有矩形的视图添加到布局中。

在你的anim文件夹中创建一个scale_anim.xml文件,其中包含以下代码。

<?xml version="1.0" encoding="utf-8"?>
<scale xmlns:android="http://schemas.android.com/apk/res/android"
   android:fromXScale="1.0" android:toXScale="3.0"
   android:fromYScale="1.0" android:toYScale="3.0"
   android:pivotX="0"
   android:pivotY="0"
   android:interpolator="@android:anim/linear_interpolator"
   android:duration="700" android:fillAfter="true" />

在你的代码中,你可以使用以下代码设置动画

Animation scaleAnimation = AnimationUtils.loadAnimation(this
        , R.anim.scale_anim.xml);
layout.startAnimation(scaleAnimation);

这只会为一个View对象添加动画效果,而不是Canvas对象。 - ClayHerendeen

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接