如何实现低级ui之间的切换
2010-07-20 16:36
281 查看
Java code public class MainScreen extends Canvas
{
public MainScreen() { }
public void paint(Graphics g) { }
public void keyPressed(int keyCode)
{
int action = this.getGameAction(keyCode);
if(action == Canvas.FIRE)
{
//切换界面
}
}
}
请问如何实现低级ui之间的切换,如我按下FIRE键后,页面就会切换到另一个去。
能不在midlet中使用display.setcurrent,而直接在这个页面setcurrent到下一界面吗?
如果有这样的方法,那现在这个的屏幕资源是隐藏还是释放了?能节省内存资源,释放现在这个屏幕的资源吗?
最后,在这个界面得到的一些信息(如用户输入的),能返还给midlet吗?
setCurrent是Display的方法,要想切换界面,必须用Display的setCurrent方法.
当用setCurrent切换界面后,原来的Canvas没有被释放掉,还在内存中,只是不在前台显示.如果想释放资源,可以些一个release方法,释放资源.在切换界面是调用上一个canvas的资源.
只有Canvas才能捕获到用户按键事件,但是可以让canvas获得一个midlet的引用,把canvas捕获的信息,传递给midlet.
{
public MainScreen() { }
public void paint(Graphics g) { }
public void keyPressed(int keyCode)
{
int action = this.getGameAction(keyCode);
if(action == Canvas.FIRE)
{
//切换界面
}
}
}
请问如何实现低级ui之间的切换,如我按下FIRE键后,页面就会切换到另一个去。
能不在midlet中使用display.setcurrent,而直接在这个页面setcurrent到下一界面吗?
如果有这样的方法,那现在这个的屏幕资源是隐藏还是释放了?能节省内存资源,释放现在这个屏幕的资源吗?
最后,在这个界面得到的一些信息(如用户输入的),能返还给midlet吗?
setCurrent是Display的方法,要想切换界面,必须用Display的setCurrent方法.
当用setCurrent切换界面后,原来的Canvas没有被释放掉,还在内存中,只是不在前台显示.如果想释放资源,可以些一个release方法,释放资源.在切换界面是调用上一个canvas的资源.
只有Canvas才能捕获到用户按键事件,但是可以让canvas获得一个midlet的引用,把canvas捕获的信息,传递给midlet.
相关文章推荐
- Flex 如何实现按钮之间的切换,按钮点击事件
- Handler解析(一):是如何实现线程之间的切换
- Gridview如何实现敲回车进入下一行,或者用方向键在不同的行之间切换?
- vue中如何实现样式之间的切换
- 如何实现tab键光标只在文本框之间切换
- QT creator 如何实现多窗口之间的切换
- 如何自己写一个容器来实现viewController之间的切换
- 如何实现Activity之间的切换动画(一)
- 如何实现3G/4G与Wi-Fi网络之间稳定且无缝地切换
- Handler是如何实现线程之间的切换的
- UI 动画之UIView动画 实现两个页面之间的切换
- org.eclipse.ui.handlers.RegistryToggleState 状态切换实现要点
- 如何实现CAPP、CMainFrame、CViEW和CDOC之间相互调用
- elisp片段(3)--CPP中文件与实现文件之间的切换
- 如何才能学到Qt的精髓——信号槽之间的无关性,提供了绝佳的对象间通讯方式,QT的GUI全是自己的一套,并且完全开源,提供了一个绝好机会窥视gui具体实现
- 如何在ASP·NET中实现页面之间的传参?
- 如何实现Linux进程之间的通信?
- 如何用委托与事件实现winfrom窗体之间值传递
- 如何使用js来实现通过href完成多个html页面之间的传递参数