J2ME里界面的相互跳转

原创 2007年09月20日 09:23:00
import java.util.Stack;

import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;

public class Midlet extends MIDlet {
    
    
private static Midlet _instance = null;
    
    
private Display _display = null;
    
    
/**
     * 程序一开始显示的界面
     
*/

    
private LoginForm _loginForm = null;

    
/**
     * 堆栈,用于存储界面,适用于上下翻页,不适用于跳转到指定的页面
     
*/

    
private Stack _uiStack = new Stack();
    
    
    
public Midlet() {
        _instance 
= this;
        _display 
= Display.getDisplay(this);
        _loginForm 
= new LoginForm(this);
    }


    
protected void destroyApp(boolean arg0) throws MIDletStateChangeException {}

    
protected void pauseApp() {}

    
protected void startApp() throws MIDletStateChangeException {
        forward(
new LoginList());        //跳转到需要显示的界面
    }

    
    
/**
     * 跳出(不显示)当前的界面
     
*/

    
public static void jumpBack(){
        _instance._uiStack.pop();
    }

    
    
/**
     * 返回到上一个界面
     
*/

    
public static void goBack(){
        _instance._uiStack.pop();
        Object obj 
= _instance._uiStack.peek();
        _instance._display.setCurrent((Displayable)obj);
    }

    
    
/**
     * 跳转到下一个界面
     * 
@param next 要显示的界面
     
*/

    
public static void forward(Displayable next){
        _instance._uiStack.push(next);
        _instance._display.setCurrent(next);
    }

    
    
/**
     * 返回Midlet的实例
     
*/

    
public static Midlet getMidlet(){
        
return _instance;
    }

    
    
/**
     * 退出程序
     
*/

    
public void quit() {
        
try{
            
this.destroyApp(true);
            
this.notifyDestroyed();
        }
catch(MIDletStateChangeException mce){
            
        }

        
    }

    
}


 

相关文章推荐

J2ME 拼图游戏 快速开发 全过程 (四)——游戏选项设置界面

代码: package cn.edu.xtu.tilepuzzle.ui; import javax.microedition.lcdui.Choice; import javax.mi...

使用NetBeans进行J2ME开发(三):低级图形用户界面Canvas

在这一篇中,我将向大家介绍图形用户界面中的低级图形用户界面。所谓低级图形用户界面,指的是那种我们可以自己在上面画图的控件,它是和TextBox,List等等这些用户控件刚好相对的概念,因为这些用户控件...

J2ME 拼图游戏 快速开发 全过程 (五)——游戏帮助界面

代码: /*  * Created on 2004-6-20  *  * TODO To change the template for this generated file go to ...

j2me学习笔记【15】——使用低层用户界面显示文本小实例

    字体类型有默认系统字体、等宽字体和均衡字体3种字体类型,系统默认字体是设备所选择的字体,在等宽字体中,所有字符的宽度都相同。在均衡字体中,字符的宽度由字符的自然情况决定。    有4种字形可以...

j2me 单个canvas界面设计

为什么只使用一个canvas?1. 节省内存空间2. 页面跳转逻辑简单,方便管理3. 每个页面中有许多相同的元素和函数需要抽象如何实现单个canvas的低级界面设计?1. 抽象每一个界面的类:.pub...

J2ME 拼图游戏 快速开发 全过程 (六)——图片设置界面设计

代码: package cn.edu.xtu.tilepuzzle.ui; import java.io.IOException; import java.util.Vector; ...

J2ME 拼图游戏 快速开发 全过程 (二)——游戏开始界面设计

源码: /*  * Created on 2004-6-20  *  * TODO To change the template for this generated file go to ...

Eclipse 3.5.2配置J2ME环境和 WTK2.5.2下载(转)

一、下载EclipseMe1.7.9 1. EclipseMe1.7.9下载地址是 : http://sourceforge.net/projects/eclipseme/files/ ...

【转】Android Matrix类实现J2ME的drawRegion的镜像方法【新一则】

转自:http://mycoding.iteye.com/blog/968811            http://novembre.iteye.com/blog/636175先说说drawRegi...

J2me破解(转)

Javassite:使字节码工程变得简单--在比字节码抽象度更高的java源代码级进行字节码工程 清源(mote_li)译 原文:http://sys-con.com/story/?storyid=...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:J2ME里界面的相互跳转
举报原因:
原因补充:

(最多只允许输入30个字)