问题标签 [ondraw]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2509 浏览

java - 在 onDraw() 中保存画布;

我正在尝试将 Canvas 对象保存在 onDraw() 方法中。这是因为我在 onDraw 方法中使用了 foreach 循环,导致:canvas.DrawText (textitem, x,y, textpaint);
(我必须这样做,因为我在蒙版区域周围绘制文本)

我现在正在尝试的是:

调试时我看到它看起来不错,但出来是空的。什么是让这个工作的最佳方法?

0 投票
1 回答
2542 浏览

android - Android:使用 DrawPoint() 的 onDraw 方法导致画布抖动和失真

我正在开发一个应用程序,它或多或少地将二维值矩阵绘制到画布上。该矩阵的值被缩放到 Alpha 级别以说明强度,并且矩阵的坐标简单地从行和列索引外推。下面是我的 onDraw 例程。

这里的油漆配置预定义为:

该程序一次绘制一个像素,填充一列像素,该像素等于矩阵一列中元素的数量。然后它从下一列开始,上一列仍然显示,依此类推。在这个阶段,当所有列都已满时,它会再次从第一列开始,在之前的元素之上绘制。

问题:尽管已经绘制了拖尾柱,但它似乎会闪烁并四处跳动,Alpha 也是如此。我试图用 canvas.save() 和 canvas.restore() 来捕获整个画布并在打印一列后恢复它。我已经仔细检查了我所有的行和列索引以及 alpha 值,以确保坐标按需要递增(它们确实如此)。这与示例 APIdemo DrawPoints.java 非常相似,但存在三个主要区别。

  1. 我使用的是 DrawPoint 而不是 DrawPoints,并且
  2. 我不使用“canvas.setColour”,因为它会从画布中删除拖尾列。
  3. 此 onDraw 函数在扩展 SurfaceView 的 Thread 中运行

任何想法将不胜感激,感谢您的宝贵时间。

0 投票
1 回答
273 浏览

android - 关于android失效?

现在,我有一个 Framelayout,它包含两个视图。当我调用顶视图的 invalidate() 方法时,我发现另一个视图的 onDraw() 也被调用了。我想不应该调用另一个视图的 onDraw(),有没有办法停止调用 onDraw?

有人告诉 onDraw() 被调用的原因吗?

0 投票
2 回答
1903 浏览

android - 在 onDraw()/onCreate() 之后延迟

在这段代码中我将在哪里放置线程延迟,这将在 onCreate() 完成之后发生,这也意味着在 onDraw() 完成/显示之后?之后,我将调用 grid.clearPattern(),它会在调用 grid.displayPattern() 时清除画布上绘制的图案。所以之后我仍然需要能够修改画布。

}

0 投票
4 回答
4666 浏览

android - 自定义视图的 Ondraw 无限循环android

我的自定义视图的 OnDraw 函数被无限调用并且正在循环!可能的原因是什么?

这是我的自定义视图:-

这种观点在另一项活动中被夸大如下:-

此视图放置在相对视图内的 xml 文件中,相对视图是水平滚动视图的子视图。

0 投票
2 回答
8150 浏览

android - drawBitmap 不是全屏的

我使用 onDraw 方法显示图像,如下所示:

我想将此图像设置为背景,但它仅显示在屏幕的一部分上。怎么设置成全屏?

有一种方法可以将图像设置为 xml 的背景,并通过 onDraw 方法在此图像上绘制其他图像?

0 投票
1 回答
312 浏览

android - 嵌入水平滚动视图中的视图是否会导致无限的 ondraw 调用

我有一个嵌入在水平滚动条内的自定义视图。我注意到我的 ondraw 方法不断被调用。是因为水平滚动条吗?

这是我的 ondraw 函数:-

0 投票
1 回答
1063 浏览

android - onDraw() 被调用但没有显示

我需要在屏幕上的背景图像上绘制一些矩形。为此,我创建了这个类:

在我放置的活动的 xml 文件中:

logCat我从onDraw()方法中获取消息但没有显示任何内容。我的问题在哪里?我想念什么?

0 投票
1 回答
168 浏览

android - 使用 ArrayList 的内容绘制框架

所以我有这个使用 csv 文件填充的数组列表。填充后,它用于将对象绘制到框架中。这是我的 onDrawFrame 方法(我知道它很乱,我稍后会清理)

基本上这段代码所做的是检查我们试图读取的值的索引是否小于 ArrayList 的总大小。然后它读取该值并根据 if 语句检查它(如果值为 000,那么它不会绘制任何东西,但如果值为 001,那么它将在位置 x,y 处绘制一个正方形)它对中的每个值重复此操作数组列表。

我的问题是 if 语句没有触发。它们上方的那些日志标签返回它们应该返回的所有值,并且加载对象始终返回 000 或 001,但我从未从返回的 if 语句中获取日志标签,并且我的屏幕保持空白。

这是此代码的一个循环的日志。

注意没有返回正方形绘制的日志,那么我的 if 语句为什么不能识别 loadObject 值?

0 投票
2 回答
2920 浏览

android - 一个简单的一键式绘图视图,但在触摸完成之前不断收到 ACTION_CANCEL

这一直让我发疯。

我想我已经准备好了一切,但无论我做什么,在我将手指从视野中抬起之前,触摸似乎都被取消了。更奇怪的是,我可以画很长的水平线,但垂直线总是很短。

我正在使用三星 G SII 2.3.3,但构建到 2.1

蚂蚁的想法?

我的示例代码:

更新:好的,我想通了。因为这个视图在另一个视图中,所以一些触摸被父级或父级拦截。

我发现足以满足我的需求的解决方案是将以下行添加到 ACTION_DOWN 的案例中:

这让我的观点得到了所有的触动。