j2me残影

来源:百度知道 编辑:UC知道 时间:2024/07/07 14:50:13
我在GameCanver中实例化的一个扩展Sprite的类,在设置帧来做动画时,会有残影,而且不会消失,移动时更是到处都是。如何消除呢?我试过sprite(自己的)setVisable(false)方法,sprite=null也试过,都不行。是这两个方法吗,是的话位置应该在哪里调用?还是没用双缓冲?但我看双缓冲是解决闪烁问题的,不是我的残影问题。
在paint方法前使用:g.setColor(0xffffff); //设置屏幕背景颜色
g.fillRect(0, 0, CanvasWidth, CanvasHeight); //用背景颜色填充全屏幕

两种方法后,精灵没有残影,但是像g.drawString()方法没有绘制出来(我用来显示精灵血,等级),被白色遮住了。一般动画是使用以上两种方法遮住残影的吗(别人说这是清屏方法)?其他显示不了怎么办?这样速度好像也慢。

1 你没重绘背景的图片或者颜色。
2 注意顺序,先画背景,后画精灵和等级数值
3 这是正常方法,显示慢的话用双缓冲。
4 注意垃圾回收,尽量少生成垃圾对象,并且注意重用,这样能提高速度