import javax.microedition.lcdui.Choice;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Image;
import javax.microedition.lcdui.List;
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;
//列表多选模式测试 MULTIPLE 案例:
public class List_Multiple_test extends MIDlet implements CommandListener{
//默认属性 定义
private final static Command CMD_EXIT = new Command("exit",Command.EXIT,1);
private final static Command CMD_BACK = new Command("BACK",Command.BACK,1);
private Display display;
private List mainList;
private List exclusiveList;
private List implicitList;
private List multipleList;
private boolean firstTime;
//编写构造方法
public List_Multiple_test(){
//获取对象
display = Display.getDisplay(this);
//初始化数组 ,Choice 文字选项部分
String[] stringArray = {
"Option A",
"Option B",
"Option C",
"Option D",
};
//Image[] 数组初始化
Image[] imageArray = null;
//exclusiveList 声明
exclusiveList = new List("ExclusiveList",Choice.EXCLUSIVE,stringArray,imageArray);
exclusiveList.addCommand(CMD_BACK);
exclusiveList.addCommand(CMD_EXIT);
exclusiveList.setCommandListener(this);
//implicitList 的声明,隐含模式
implicitList = new List("ImplicitList",Choice.IMPLICIT,stringArray,imageArray);
implicitList.addCommand(CMD_BACK);
implicitList.addCommand(CMD_EXIT);
implicitList.setCommandListener(this);
//multipleList 声明 多选模式
multipleList = new List("Multiple",Choice.MULTIPLE,stringArray,imageArray);
multipleList.addCommand(CMD_BACK);
multipleList.addCommand(CMD_EXIT);
multipleList.setCommandListener(this);
firstTime = true;
}
protected void destroyApp(boolean arg0) throws MIDletStateChangeException {
// TODO Auto-generated method stub
}
protected void pauseApp() {
// TODO Auto-generated method stub
}
protected void startApp() throws MIDletStateChangeException {
// TODO Auto-generated method stub
if(firstTime){
Image[] imageArray = null;
try{
Image icon = Image.createImage("/images/eclipse.png");// 路径为相对路径
imageArray = new Image[]{icon,icon,icon};
}catch(Exception ex){
ex.printStackTrace();
}
String[] stringArray = {"Exclusive","Implicit","Multiple"};
mainList = new List("Choose Type",Choice.IMPLICIT,stringArray,imageArray);
mainList.addCommand(CMD_BACK);
mainList.addCommand(CMD_EXIT);
mainList.setCommandListener(this);
display.setCurrent(mainList);
firstTime = false;
}
}
public void commandAction(Command c, Displayable d) {
// TODO Auto-generated method stub
if(d.equals(mainList)){
//使用了隐含模式 , 选择的时候会以SELECT_COMMAND 作为第一参数传入
if(c==List.SELECT_COMMAND){
switch (((List)d).getSelectedIndex()) {
case 0:
display.setCurrent(exclusiveList);
break;
case 1:
display.setCurrent(implicitList);
break;
case 2:
display.setCurrent(multipleList);
break;
}
}else{
if(c==CMD_BACK){
display.setCurrent(mainList);
}
}
if(c==CMD_EXIT){
try {
destroyApp(false);
} catch (MIDletStateChangeException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
notifyDestroyed();
}
}
}
}
分享到:
相关推荐
在标题"j2me_https.rar_ j2me-https_j2me_j2me htt_j2me htt_j2me https"中,重点在于讨论J2ME中实现HTTPS连接的方法。描述中提到提供了图文并茂的解释,这通常意味着教程或指南包含详细步骤和示例,便于开发者理解...
标签中包含了"mp3_j2me player_j2me j2me_mp3 j2me_player player",这些标签进一步强调了这个项目的核心特性,即它是关于J2ME平台上的MP3播放器开发的。"player"标签暗示了它是一个媒体播放器应用,而"j2me_mp3"和...
标题中的"sd.rar_J2me 流媒体_j2me_j2me play_j2me streaming_流媒体 j2me"表明我们关注的核心是J2ME流媒体播放功能。 J2ME流媒体技术的实现涉及到多个关键组件和步骤。首先,我们需要理解J2ME的Media Player API,...
在J2ME(Java 2 Micro Edition)平台上开发游戏时,地图的设计与绘制是至关重要的一个环节。J2ME作为一种轻量级的Java平台,广泛应用于移动设备,如早期的智能手机和平板电脑,用于实现各种应用程序,特别是游戏。本...
标题中的"lwuit.rar_J2ME lwuit_LWUIT_j2me_j2me LWU_九宫"表明这是一个与LWUIT相关的压缩包,内容可能包含了实现J2ME平台上九宫图功能的代码或资源。 九宫图是一种常见的界面布局方式,通常用于显示多个小视图,如...
标题"Jaxp_xml.rar_J2ME程序_j2me_j2me_xml_j2me网络"表明这个压缩包包含了一个示例,演示如何使用JAXP(Java API for XML Processing)在J2ME环境中解析XML文件。JAXP是Java平台上的一个标准接口,用于处理XML文档...
标题"ReceiveSMS.zip_ReceiveSMS_SMS receive j2me_j2me_j2me sms_www.rec"暗示了这是一个关于如何在J2ME环境中接收短信的示例或库文件。描述进一步确认了这一点,它提到了使用无线消息API来实现这一功能。标签中的...
标题“jal.rar_mtk j2me_j2me_j2me mtk_mtk”可能指的是一个压缩包文件,其中包含了与MTK平台相关的J2ME开发资源,尤其是jal文件,这通常是一个Java应用或库文件。描述中提到的“j2me\jal.rar MTK的代码,mtk的代码...
标题中的“smd.rar_Sms j2me_j2me_j2me sms_send SMS_send sms j2me code”表明这是一个关于J2ME平台上的SMS(Short Message Service,短信服务)发送和接收的代码库或者教程。J2ME,全称为Java 2 Micro Edition,是...
J2ME游戏开发中使用层的概念,J2ME编程学习,供初学者学习,含源码
标题"用J2ME与ASP建立数据库连接.rar_http in j2me_j2me_j2me 3d_j2me asp"暗示了本主题是关于如何在J2ME应用中通过HTTP协议与ASP服务器进行通信,从而实现数据库的远程访问。这在移动应用中尤其有用,因为它允许...
《J2ME飞机游戏开发详解》 J2ME(Java 2 Micro Edition)是Java平台的一个子集,专为移动设备、嵌入式系统等资源有限的...而"j2me_plane.rar"中的源代码正是这样一个实例,值得下载研究,以加深对J2ME游戏开发的理解。
标签“j2me_tab”、“j2me_table”和“j2metable”进一步强调了主题,它们都是与表格相关的关键词,可能代表了该代码库的核心功能或类名。在J2ME开发中,由于屏幕尺寸和硬件限制,通常需要创造性的解决方案来模拟...
标题"xml.rar_j2me_j2me_xml_java_xml_j2me"暗示了这是一个针对J2ME平台的XML处理解决方案,可能包含轻量级的解析器和示例应用。 描述中提到的"j2me上的微型解析器"指的是专为J2ME设计的XML解析库,旨在在内存有限...
J2ME,全称Java 2 Micro Edition,是Java平台的一个子集,主要用于移动设备、嵌入式设备和消费类电子产品的应用程序开发。这个压缩包文件"j2me游戏开发及其源码.rar"包含了关于J2ME游戏开发的详细资料,非常适合初学...
"j2me_虚拟机" 和 "j2me_cldc-1_0" 进一步强调了这是关于J2ME的虚拟机实现,特别是CLDC 1.0规范。虚拟机是执行Java字节码的关键组件,它负责解释和执行应用程序代码,并确保跨平台兼容性。 "www.pudn.com.txt" 文件...
开发者可能使用了状态机模式,定义了如初始状态、游戏进行中、游戏结束等状态,并根据游戏逻辑切换状态。 7. **资源管理** 在资源有限的J2ME环境中,高效地管理图片、音频和其他资源是关键。源代码中可能包含了对...
这个压缩包 "j2me_cldc-1_1-fcs-src-winunix.zip" 包含了 CLDC 1.1 的完整源代码实现,是开发者深入了解和自定义 CLDC 运行环境的重要资料。 CLDC 是 J2ME 架构中的最低层,它提供了一个轻量级的虚拟机(KVM,即 K ...
在移动设备领域,个人数字助手(PDA)与Java ME(J2ME)技术结合,为开发者提供了在手机上实现类似PDA功能的平台。本文将深入探讨如何使用J2ME进行通信录管理、文件操作以及图片处理,同时介绍一个名为"PDAPDemo"的...
《J2ME手机游戏开发:探索“泡泡龙”》 J2ME,全称为Java 2 Micro Edition,是Java平台的一个子集,主要用于嵌入式设备和移动设备,尤其是早期的智能手机和平板电脑。它提供了丰富的APIs,使得开发者能够构建功能...