在画布上绘制路径作为动画

2023-12-14

我必须再问一次,因为之前没有人回答我的问题(我的问题不是重复的如何在 Android 画布上用动画绘制路径?)。请仔细阅读并帮助我(如果可能的话)提供代码。上面的例子对我来说不清楚,路径是在绘图流程上创建的。这不是我要找的......

我想绘制一条已存在于我的 View 类中的路径,通过按时间间隔绘制其点来模拟动画。我应该如何修改我的 onDraw 类来存档它?

public void onDraw(Canvas canvas) { 

paint.setStyle(Paint.Style.STROKE);
paint.setStrokeWidth(6);
paint.setColor(Color.parseColor("#10BCC9"));
if(path != null && !path.isEmpty())
    canvas.drawPath(path, paint);

}

我认为这是一个简单的问题,我不相信没有简单的答案......请帮助......


我发现绘制a没有解决方案Path与时间间隔。我的解决方案是这个,我重置路径并从点数组再次创建它。 i 和 j 是全局变量:

public void onDraw(Canvas canvas) { 

    if (i < strokes.length && j < strokes[i].length)
    {
        if (i == 0 && j == 0)
        {
            path.reset();
            path.moveTo(strokes[0][0].x, strokes[0][0].y);
        }
        if(j == 0)
            strokePaint.setColor(Color.RED);
        else
            strokePaint.setColor(Color.parseColor("#10BCC9"));
        path.lineTo(strokes[i][j].x, strokes[i][j].y);
        canvas.drawPath(path, strokePaint);
        for(int k = 0; i < textCords.size() && k <= i ; k++)
            canvas.drawText(String.valueOf(k+1), textCords.get(k).x, textCords.get(k).y, textPaint);
        if (j == strokes[i].length-1)
        {
            i++;
            j = 0;
            if (i < strokes.length)
            path.moveTo(strokes[i][0].x, strokes[i][0].y);
        }
        else
            j++;
        if (i < strokes.length)
        {
            postInvalidateDelayed(5);
        }
        else
        {
            i = 0;
            j = 0;
            animation = false;
        }
    }
}

我希望它能帮助某人...

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在画布上绘制路径作为动画 的相关文章

随机推荐

  • 在 R 编程神经网络中为 nnet 指定“初始权重”

    在 R 编程中 我试图了解如何使用 nnet 让用户指定初始权重而不是默认值来运行神经网络算法 R 文档提到了以下参数 有如何使用权重的例子吗 nnet formula data weights subset na action contr
  • ag-Grid React 在设置 gridApi 后忘记了它

    我已经修改了用按键选择使用 React 的示例 然而 一旦我按下箭头键 应用程序就会崩溃 代码如下 const gridApi setGridApi useState
  • 在 ggplot 中绘制置信区间

    我想使用 ggplot 绘制以下图 这是我的 df 结构的示例 有点 不按数据比例绘制 example df data frame mean c 0 3 0 8 0 4 0 65 0 28 0 91 0 35 0 61 0 32 0 94
  • 陷阱删除键

    我的问题相当简单 我需要将逻辑应用于 Excel 中的删除按钮 在我问的一个相关问题是清除数据透视表中的单元格的方法 现在意识到这可能不是正确的方法 这是我正在考虑的另一种选择 不幸的是 我承认我对 Visual Basic 的经验很少 而
  • 如何使用 html 类根据时间记录显示打开/关闭

    我正在尝试使用 Javascript 根据公司在该特定日期的时间显示 打开 或 关闭 我在 WordPress 上使用主题 Listify 客户可以在其中列出他们的业务 他们可以选择输入一周中每一天的工作时间 我希望能够使用存储在跨度内的数
  • 逆变解释

    首先 我在 SO 和博客上阅读了许多关于协变和逆变的解释 非常感谢埃里克 利珀特制作了如此精彩的系列协变和逆变 不过 我有一个更具体的问题 我正在努力解决这个问题 据我了解埃里克的解释协变和逆变都是描述变换的形容词 协变变换是保留类型顺序的
  • 没有列表的项目符号列表

    我有以下 html 代码 div class magicbullets Nice awesome cool div 我需要它表现得像 div class magicbullets ul li nice li li aweseome li l
  • SQLite 查询限制

    我正在构建一个小界面 我希望用户能够在其中写出他们的信息entiresql语句 然后查看返回的数据 但是 我不希望用户能够做任何有趣的事情 即delete from user table 实际上 我希望用户能够做的唯一一件事就是运行sele
  • 如何在不访问数据库的情况下创建带有延迟字段的 django 模型实例?

    假设我知道数据库中存在 django 模型的一行的一些字段 但没有将它们封装在模型实例中 有没有什么简单的方法可以让我将它们包装在模型实例中 而无需执行额外的数据库查询 并以填充了这些字段但所有其他字段都延迟的实例结束 所以说我有模型 fr
  • C# 代码不会启动程序。 Win32Exception 未处理

    我正在制作一个程序 当单击按钮时启动程序 它似乎适用于 Chrome 或 Word 等程序 但不适用于 fraps 等较小的程序 并给了我错误 System dll 中发生类型为 System ComponentModel Win32Exc
  • Big Endian 和 Little Endian 字节顺序的区别

    Big Endian 和 Little Endian 字节顺序有什么区别 这两个似乎都与 Unicode 和 UTF16 有关 我们到底在哪里使用它 Big Endian BE Little Endian LE 是组织多字节字的两种方法 例
  • 我应该如何在 C++ 中正确使用 FormatMessage()?

    Without MFC ATL 我该如何使用FormatMessage 获取错误文本HRESULT HRESULT hresult application CreateInstance Excel Application if FAILED
  • 多级动态弹出菜单

    我有以下带有纯 CSS 的弹出菜单结构 HTML ul class menu li a href Base a ul li a href Clients a ul li a href New a li li a href Edit a li
  • 如何阻止 numpy hstack 更改 opencv 中的像素值

    我正在尝试使用 opencv 在 python 中显示图像 并在其上显示侧窗格 当我使用np hstack主画面变得无法辨认的白色 只有少量的颜色 这是我的代码 img cv2 imread filename img with gt gt
  • 如何在 Visual Studio 2013 中的源代码管理下复制和重命名解决方案

    我有一个名为 ShoppingService sln 的 VS2013 解决方案 其中有 7 个项目受 TFS 源代码控制 现在我想复制该解决方案 将其重命名为 BasketService sln 并再次将其置于源代码控制之下 我不想创建原
  • 使用 PHP 和 DOTNET 类访问 Windows 注册表

    这是一个简单的问题 如何使用 PHP 和 DOTNET 类访问 Windows 注册表 我想做的是读取另一个程序写入的值 谷歌搜索并没有透露太多信息 我很感激任何答案 我找到了答案 它适用于 COM 对象 wscript new COM W
  • 将一个txt文件内容附加到另一个现有txt文件

    我正在尝试附加names txt将文件内容复制到另一个名为 as 的文件surname txt在文件末尾 不丢失以前的信息surname txt 有什么可能的方法来实现这个操作 为了执行此操作 我使用 php 以下解决方案完美运行 但数据没
  • HtmlUnit 测试失败示例

    我正在尝试通过 Junit 运行示例 HtmlUnit 测试用例 我的项目是基于 Maven 的 我是否需要将编译和测试下列出的所有依赖项添加到我的 POM 中 http htmlunit sourceforge net dependenc
  • android grafika ContinuousCapture 活动问题

    我正在使用 android grafika 进行视频录制 我将更改我想要的所有内容 一切都很完美 只有2个问题 如果我在 7 秒 例如 2 秒或低于 7 秒 后保存视频 那么它会保存 7 秒的视频 如果我拍摄的视频时长为 15 秒或更长时间
  • 在画布上绘制路径作为动画

    我必须再问一次 因为之前没有人回答我的问题 我的问题不是重复的如何在 Android 画布上用动画绘制路径 请仔细阅读并帮助我 如果可能的话 提供代码 上面的例子对我来说不清楚 路径是在绘图流程上创建的 这不是我要找的 我想绘制一条已存在于