我开发了一款游戏,但这是我面临的一个严重问题。我的代码中没有任何线程,但每当我使用alert
时Display.setCurrent(my_alert)// my_alert has a timeout of 3000ms
然后在此警报之后,出现一个空白的白色屏幕。当按下屏幕时,我的游戏画布重新出现。在设置警报之前,我的跳棋板游戏画布被设置为当前显示。自动键盘锁定后也会出现此问题。
此警报对我的游戏至关重要,请提出解决方案。
答案 0 :(得分:2)
这类问题通常表示GameCanvas方法showNotify()的覆盖丢失或不正确:
该实现在此Canvas在显示器上显示之前立即调用showNotify()。 Canvas子类可以覆盖此方法以在显示之前执行任务,例如设置动画,启动计时器等.Canvas类中此方法的默认实现为空。
从Alert到previous屏幕返回时调用Above方法。 GameCanvas应该以某种方式触发屏幕重绘(例如使用repaint
或flushGraphics
方法),否则它将显示为空白。
自动键盘锁定后出现此问题的事实使得更有可能在您的MIDlet中没有完成showNotify
。