问题标签 [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.
java - 在 onDraw() 中保存画布;
我正在尝试将 Canvas 对象保存在 onDraw() 方法中。这是因为我在 onDraw 方法中使用了 foreach 循环,导致:canvas.DrawText (textitem, x,y, textpaint);
(我必须这样做,因为我在蒙版区域周围绘制文本)
我现在正在尝试的是:
调试时我看到它看起来不错,但出来是空的。什么是让这个工作的最佳方法?
android - Android:使用 DrawPoint() 的 onDraw 方法导致画布抖动和失真
我正在开发一个应用程序,它或多或少地将二维值矩阵绘制到画布上。该矩阵的值被缩放到 Alpha 级别以说明强度,并且矩阵的坐标简单地从行和列索引外推。下面是我的 onDraw 例程。
这里的油漆配置预定义为:
该程序一次绘制一个像素,填充一列像素,该像素等于矩阵一列中元素的数量。然后它从下一列开始,上一列仍然显示,依此类推。在这个阶段,当所有列都已满时,它会再次从第一列开始,在之前的元素之上绘制。
问题:尽管已经绘制了拖尾柱,但它似乎会闪烁并四处跳动,Alpha 也是如此。我试图用 canvas.save() 和 canvas.restore() 来捕获整个画布并在打印一列后恢复它。我已经仔细检查了我所有的行和列索引以及 alpha 值,以确保坐标按需要递增(它们确实如此)。这与示例 APIdemo DrawPoints.java 非常相似,但存在三个主要区别。
- 我使用的是 DrawPoint 而不是 DrawPoints,并且
- 我不使用“canvas.setColour”,因为它会从画布中删除拖尾列。
- 此 onDraw 函数在扩展 SurfaceView 的 Thread 中运行
任何想法将不胜感激,感谢您的宝贵时间。
android - 关于android失效?
现在,我有一个 Framelayout,它包含两个视图。当我调用顶视图的 invalidate() 方法时,我发现另一个视图的 onDraw() 也被调用了。我想不应该调用另一个视图的 onDraw(),有没有办法停止调用 onDraw?
有人告诉 onDraw() 被调用的原因吗?
android - 在 onDraw()/onCreate() 之后延迟
在这段代码中我将在哪里放置线程延迟,这将在 onCreate() 完成之后发生,这也意味着在 onDraw() 完成/显示之后?之后,我将调用 grid.clearPattern(),它会在调用 grid.displayPattern() 时清除画布上绘制的图案。所以之后我仍然需要能够修改画布。
}
android - 自定义视图的 Ondraw 无限循环android
我的自定义视图的 OnDraw 函数被无限调用并且正在循环!可能的原因是什么?
这是我的自定义视图:-
这种观点在另一项活动中被夸大如下:-
此视图放置在相对视图内的 xml 文件中,相对视图是水平滚动视图的子视图。
android - drawBitmap 不是全屏的
我使用 onDraw 方法显示图像,如下所示:
我想将此图像设置为背景,但它仅显示在屏幕的一部分上。怎么设置成全屏?
有一种方法可以将图像设置为 xml 的背景,并通过 onDraw 方法在此图像上绘制其他图像?
android - 嵌入水平滚动视图中的视图是否会导致无限的 ondraw 调用
我有一个嵌入在水平滚动条内的自定义视图。我注意到我的 ondraw 方法不断被调用。是因为水平滚动条吗?
这是我的 ondraw 函数:-
android - onDraw() 被调用但没有显示
我需要在屏幕上的背景图像上绘制一些矩形。为此,我创建了这个类:
在我放置的活动的 xml 文件中:
在logCat
我从onDraw()
方法中获取消息但没有显示任何内容。我的问题在哪里?我想念什么?
android - 使用 ArrayList 的内容绘制框架
所以我有这个使用 csv 文件填充的数组列表。填充后,它用于将对象绘制到框架中。这是我的 onDrawFrame 方法(我知道它很乱,我稍后会清理)
基本上这段代码所做的是检查我们试图读取的值的索引是否小于 ArrayList 的总大小。然后它读取该值并根据 if 语句检查它(如果值为 000,那么它不会绘制任何东西,但如果值为 001,那么它将在位置 x,y 处绘制一个正方形)它对中的每个值重复此操作数组列表。
我的问题是 if 语句没有触发。它们上方的那些日志标签返回它们应该返回的所有值,并且加载对象始终返回 000 或 001,但我从未从返回的 if 语句中获取日志标签,并且我的屏幕保持空白。
这是此代码的一个循环的日志。
注意没有返回正方形绘制的日志,那么我的 if 语句为什么不能识别 loadObject 值?
android - 一个简单的一键式绘图视图,但在触摸完成之前不断收到 ACTION_CANCEL
这一直让我发疯。
我想我已经准备好了一切,但无论我做什么,在我将手指从视野中抬起之前,触摸似乎都被取消了。更奇怪的是,我可以画很长的水平线,但垂直线总是很短。
我正在使用三星 G SII 2.3.3,但构建到 2.1
蚂蚁的想法?
我的示例代码:
更新:好的,我想通了。因为这个视图在另一个视图中,所以一些触摸被父级或父级拦截。
我发现足以满足我的需求的解决方案是将以下行添加到 ACTION_DOWN 的案例中:
这让我的观点得到了所有的触动。