android中绘图刷新界面的问题

用android中的View类绘图的时候,绘制一个随机出现的矩形,用postInvalidate来更新界面就会刷新屏幕,上一个随机绘制的矩形就被刷新看不见了,应该怎么解决... 用android中的View类绘图的时候,绘制一个随机出现的矩形,用postInvalidate来更新界面就会刷新屏幕,上一个随机绘制的矩形就被刷新看不见了,应该怎么解决 展开
 我来答
百度网友57c7b6d27
2011-06-01 · TA获得超过193个赞
知道答主
回答量:76
采纳率:0%
帮助的人:80万
展开全部
如果不用canvas.drawColor(Color.TRANSPARENT)的话是不会清屏的。不过还是要看下你的onDraw方法,凭空讲是讲不清楚的
追问
super.onDraw(canvas);
canvas.drawColor(Color.WHITE);
我定义x,y,a,b为数组,
index为下标
x[index] = (int) (Math.random()*240);
产生随机坐标,
canvas.drawRect(x[index],y[index],a [index],b[index],mPaint);
这是我的onDraw方法,把canvas.drawColor注释后还是不行啊
追答
我刚刚也写了一个测试一下,发现也会清屏,很奇怪。我忘记了我之前写的是surfaceview还是View,必须要用drawcolor才能清屏。等我再研究下看看
————————————————————————————
我刚才看了一下,View 里面用postinvalidate就会刷新屏幕,SurfaceView则不会,如果要到你想要的效果,只能用surfaceView了。要不然就用ArrayList去储存你随机生成的Rect,然后用一个循环全部画出来。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式