草庐IT

Canvas-EventSystem-Panel

全部标签

java - Android 在 Canvas 上获取 Bitmap Rect (left, top, right, bottom)

我在Canvas上绘制一个位图,然后对其进行一些缩放,非常简单,只需使用canvas.scale(int,int,pivot,pivot),然后在缩放完成后,我需要得到位图相对于视口(viewport)的坐标。有没有什么方便的方法可以做到这一点而无需自己计算初始位置然后它在比例尺之后的位置?实际上,具有缩放比例的位图可以比Canvas更大,所以我实际上需要View和位图的剪辑大小(不可见区域的大小,我想小于x,y(0,0). 最佳答案 我在想:canvas.scale(scaleX,scaleY,pivotX,pivotY);if(

android - 如何使用 Canvas - Android 将图像从 drawable 绘制到 imageview 上

我有一个Activity,其中有一个ImageView。我想要做的是能够使用可绘制文件夹中的图像绘制用户触摸Imageview的位置。我读到最好的方法是使用Canvas,但我不确定在何处以及如何将onDraw方法与onTouchListener集成。这是我目前所拥有的:publicclassMainextendsActivity{@OverridepublicvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.main);finalTextVi

android - 如何在Canvas中旋转圆形动画

我想在android的Canvas中连续旋转圆圈。我正在使用Canvas绘制圆圈并且我不断旋转圆圈。这是可能的,如果可能的话怎么做代码或示例可以帮助我,不胜感激!这是我在Canvas上画圆的代码:importandroid.app.Activity;importandroid.content.Context;importandroid.graphics.Canvas;importandroid.graphics.Color;importandroid.graphics.Paint;importandroid.os.Bundle;importandroid.view.View;publi

Android - 用于 onDraw 的预绘制 Canvas

我过去常常使用onDraw方法在ImageView中进行绘图。但是,我了解到最好在onDraw之外绘制Canvas并在onDraw中更新Canvas。我知道这显然是错误的(因为它不起作用)但是我将如何完成我正在尝试做的事情:@OverridepublicvoidonDraw(Canvasc){c=this.newCanvas;super.onDraw(c);} 最佳答案 publicclassGameLoopThreadextendsThread{privateGameViewview;privatebooleanrunning=f

android - 背景图像绘制时间太长(Canvas)生涩的 Sprite ......?

嘿,我正处于我一直在开发的应用程序的十字路口。这是一款游戏,而且是一款“街机/Action”游戏,但我使用Surfaceview而不是OpenGL对其进行了编码(由于游戏与原始设计发生了巨大变化,结果就是这样)。我发现自己被性能问题困扰,甚至在游戏中也没有,但只是在第一个Activity中,它是一个动画菜单(全屏背景,大约有8个Sprite在屏幕上float)。即使使用这么少量的Sprite,我也无法获得完美流畅的运动。它们平稳地移动了一会儿,然后瞬间变得“断断续续”或“不稳定”。我注意到(据我所知)绘制背景(预缩放图像)大约需要7到8毫秒。这合理吗?我尝试了不同的绘图方式,例如:ca

Android:单击按钮在自定义 Canvas 中绘制圆圈

我正在做一个简单的鼓组应用程序,用户可以在其中单击按钮以发出相应的声音并在Canvas上的随机位置绘制一个圆圈。对于Canvas,我创建了一个名为CanvasView的自定义View,然后我将该CanvasView实现到MainActivity中,这样每次在MainActivity中使用OnClickListener单击按钮时我都可以控制该View。但是,我不知道如何使用OnClickListener实际控制(画一个圆圈)CanvasView。这部分我需要帮助这是我的MainActivity类代码:publicclassMainActivityextendsActivity{//set

android - Canvas restore() 在极少数情况下导致下溢异常

通过ACRA,我收到了来自软件alpha版本的少量报告,这些报告显示在对Canvas.restore()的特定调用期间发生异常。异常是java.lang.IllegalStateException:Underflowinrestore。我很清楚,如果restore()调用次数多于save()调用次数,就会发生此异常。然而,通过非常仔细的代码检查,我绝对确定对canvas.save()和canvas.restore()的所有调用都是平衡的。也就是说,所有对canvas.save()的调用肯定会在稍后阶段通过对canvas.restore()的调用来平衡。我还可以确认不存在可能导致缺少ca

安卓。 Canvas 缩放和平移

我创建了自定义View,您可以在其中触摸和缩放它。大部分工作都是在这个post的帮助下创建的接下来我观察到,如果我想放大图像,它总是缩放到左上角。这是我的onDraw()方法:@OverrideprotectedvoidonDraw(Canvascanvas){super.onDraw(canvas);canvas.save();canvas.translate(mPosX,mPosY);canvas.scale(mScaleFactor,mScaleFactor);//actualdrawingcanvas.getClipBounds(mRect);canvas.restore();

android - 如何在使用 Canvas 时制作动画

例如:myPos.getCoordX()为0,myPos.getCoordY()为0当我更新变量时,myPos.getCoordX()是50而myPos.getCoordY()是100然后我再次调用showPosition()方法。我想:开始一个从0,0到50,100的移动动画privatevoidshowPosition(){BitmapfloorPlan=BitmapFactory.decodeResource(getResources(),R.drawable.wallpaper).copy(Bitmap.Config.ARGB_4444,true);Bitmappoint=Bi

javascript - HTML5 Canvas ,防手掌误触

我们正在尝试将html5Canvas与平板电脑手写笔一起使用,但我们在使用多点触控平板电脑进行手掌触摸时遇到了问题。当一个人试图画东西并用手掌触摸显示表面时,由于多点触控会出现线条。你知道如何通过js或canvas选项在平板电脑上禁用多点触控吗,或者你知道是否有html5canvas防手掌误触技术。 最佳答案 当前的浏览器中提供了一些较新的WebAPI。特别是radiusX和radiusY的touches来自touchevent可用于计算触摸面积。可以忽略大于手指或手写笔的区域。 关于j