如何完全清除屏幕?任何代码片段都会有所帮助.
谢谢.
这是我的代码:
public class Panel extends SurfaceVIEw implements SurfaceHolder.Callback {private VIEwThread mThread;private ArrayList<Element> mElements = new ArrayList<Element>();public Panel(Context context,AttributeSet attrs) { super(context,attrs); this.setBackgroundcolor(color.transparent); this.setZOrderOntop(true); //necessary getHolder().setFormat(PixelFormat.transparent); getHolder().addCallback(this); mThread = new VIEwThread(this); } public voID doDraw(Canvas canvas) { super.onDraw(canvas); //canvas.drawcolor(color.transparent); // canvas.drawcolor(color.argb(0,255,255)); //canvas.drawcolor(color.rgb(-1,-1,-1)); //canvas.drawARGB(0,255); synchronized (mElements) { for (Element element : mElements) { element.doDraw(canvas); } }}@OverrIDepublic voID surfaceChanged(SurfaceHolder holder,int format,int wIDth,int height) { // Todo auto-generated method stub}@OverrIDepublic voID surfaceCreated(SurfaceHolder holder) { if (!mThread.isAlive()) { mThread = new VIEwThread(this); mThread.setRunning(true); mThread.start(); }}@OverrIDepublic voID surfaceDestroyed(SurfaceHolder holder) { if (mThread.isAlive()) { mThread.setRunning(false); }}@OverrIDepublic boolean ontouchEvent(MotionEvent event) { synchronized (mElements) { mElements.add(new Element(getResources(),(int) event.getX(),(int) event.getY())); } return super.ontouchEvent(event);}
}
解决方法 试试这个 :canvas.drawcolor(0); //use 32bit hex like 0xffffffff for white
要么
canvas.drawARGB(0,0); //0-255 for each component
这将用黑色清除画布.你可以使用任何你喜欢的颜色.
总结以上是内存溢出为你收集整理的如何清除Android中绘制的Canvas的内容?全部内容,希望文章能够帮你解决如何清除Android中绘制的Canvas的内容?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)