midlet 基本结构
midlet是midp的基本执行单元。所有midlet必须继承自 javax.microedition.midlet.midlet类。该类定义了三个abstract方法 (startapp()、pauseapp()、destroyapp()),应用程序管理器就是通过上面这三个方法控制着midlet的生命周期。在编写midlet时必须要实现这三个方法。因此midlet的基本结构如下:
import javax.microedition.midlet.*; public class 自定义类名 extends midlet { public 自定义类名(){}//构造方法 public void startapp(){}//启动或重新启动midlet public void pauseapp(){}//暂停midlet public void destroyapp(boolean unconditional){}//销毁midlet }
当midlet被加载后,会首先调用midlet的无参构造方法进行初始化。如果没有构造方法 会自动调用缺省构造方法。如果只是定义了一个带有参数的构造方法 编译器就不会自动加载缺省构造方法。必要的话 需要另外写一个无参的 以保证正确初始化。
仔细观察 基本结构,并没有发现我们熟悉的 public static void main(string[] args){}方法,这是midp规范规定的。如果midlet中写了该方法,应用程序管理器将忽略它。还有midlet 开始必须要import javax.microedition.midlet.*;
简单的midlet编写
现在开始动手编写我们的第一个midlet。以hellomidlet为例。
打开eclipse3.0
文件-->新建-->其他-->j2me --> j2me midlet suite -->键入项目名称 hellomidlet-->选择开发平台 这里我选择 j2me wireless toolkit 2.2 midp 2.0 platform .
文件-->新建-->其他-->j2me --> j2me midlet -->源文件夹项 已经自动填写了 hellomidlet 我们只要在名称处 键入 hellomidlet 即可,其他的保持缺省。
接下来主要的工作就是代码的编写了。具体代码如下:
import javax.microedition.midlet.midlet; import javax.microedition.midlet.midletstatechangeexception; import javax.microedition.lcdui.*;//界面类 /* * 创建日期 2005-10-2 * * todo 要更改此生成的文件的模板,请转至 * 窗口 - 首选项 - java - 代码样式 - 代码模板 */ /** * @author snail * * todo 要更改此生成的类型注释的模板,请转至 * 窗口 - 首选项 - java - 代码样式 - 代码模板 */ public class hellomidlet extends midlet { private display display; private form form; /** * */ public hellomidlet() { super(); // todo 自动生成构造函数存根 display = display.getdisplay(this); form = new form("hellomidlet"); form.append("welcom to j2me world!"); } /* (非 javadoc) * @see javax.microedition.midlet.midlet#startapp() */ protected void startapp() throws midletstatechangeexception { // todo 自动生成方法存根 display.setcurrent(form); } /* (非 javadoc) * @see javax.microedition.midlet.midlet#pauseapp() */ protected void pauseapp() { // todo 自动生成方法存根 } /* (非 javadoc) * @see javax.microedition.midlet.midlet#destroyapp(boolean) */ protected void destroyapp(boolean arg0) throws midletstatechangeexception { // todo 自动生成方法存根 } }
代码其实很简单,主要工作就是通过display 引用设置当前屏幕为form ,将我们要显示的画面显示到屏幕上。
闽公网安备 35060202000074号