【canvas】llegalArgumentException: canvas object must be the
androidstudio吧
全部回复
仅看楼主
level 4
在退出应用的时候会弹出
java.lang.IllegalArgumentException: canvas object must be the same instance that was previously returned by lockCanvas
根据我自己查找出来的错误
public void mydraw(){
try {
canvas=sfh.lockCanvas();
if (canvas!=null){
canvas.drawColor(Color.WHITE);
switch (gamestate) {
case GAME_MENU:
gamemenu.draw(canvas, paint);
break;
case GAME_ING:
gameBg.draw(canvas,paint);
player.draw(canvas,paint);
break;
}
}
}
catch (Exception e){
}
finally {
sfh.unlockCanvasAndPost(canvas);
}
将finally里面的那条语句移到外面,就不会报错了。
可是finally语句最终不是都会执行吗,移到外面又会有什么不同呢。
求大神解惑
2017年06月02日 07点06分 1
1