备份作参考,注意切换时的白屏等问题
public void switchCanvas(int id) {
curCanvasId = id;
if (curCanvasId == 1) {
canvas_1 = new ScreenManager_1();
dataManager = new DataManager_1(null/** this.getAppProperty("MIDlet-Version"* )*/);
dataManager.load();
// reset SPAC system
if (DeviceConstants_1.SPAC_ENABLE) {
SpacFile_1.resetImageCache();
}
// comment this before making iphone build
// canvas_1.setFullScreenMode(true);
Display.getDisplay(this).setCurrent(canvas_1);
gcWait(100);
canvas_1.start();
if (DeviceConstants_1.CALL_SHOW_NOTIFY_ON_STARTAPP)
{
if (canvas_1 != null)
{
canvas_1.showNotify();
}
}
cleanMenuCanvas();
} else if (curCanvasId == 2) {
canvas_2 = new GameCanvas();
Display.getDisplay(this).setCurrent(canvas_2);
gcWait(100);
if (LicenseHandler.LICENSE_HANDLER_SUPPORTED) {
if (canvas_2.isRecurring(this) && !validated
&& canvas_2.validateLicense(this, canvas_2)) {
validated = true;
Display.getDisplay(this).setCurrent(canvas_2);
canvas_2.start();
} else if (!canvas_2.isRecurring(this)) {
Display.getDisplay(this).setCurrent(canvas_2);
canvas_2.start();
}
} else {
canvas_2.start();
}
cleanMenuCanvas();
}
}
分享到:
相关推荐
- `HardDriveMIDlet` 是一个MIDlet,它是Java ME应用的基本单元。它继承自 `MIDlet` 类并实现了 `CommandListener` 接口。MIDlet类是应用程序的主要入口点,负责生命周期管理。 - `startApp()` 方法启动应用程序,...
这段代码定义了一个名为`WelcomeMidlet1`的类,该类继承自`MIDlet`并实现了`CommandListener`接口。主要分为以下几个部分: 1. **导入必要的包**:这部分引入了J2ME中用于UI操作的所有必需类,例如`Canvas`, `...
描述提到这个代码是完整的,这可能包括了游戏的基本架构、游戏循环、用户输入处理、图形绘制、动画制作、碰撞检测等多个核心组成部分。对于初学者来说,这是一个宝贵的资源,因为通过实际代码可以更好地理解和掌握...
在构造函数中,它创建了一个名为`mscreen`的游戏实例,并设置为当前显示。`startApp()`方法启动一个新线程来运行游戏,这确保了游戏逻辑不会阻塞UI线程。`run()`方法包含了游戏的主循环,当`process()`返回`false`时...
MIDlet是Java ME应用程序的基本单位,每个应用程序至少包含一个MIDlet实例,它是应用程序的入口点。 - **包声明**:`package net.frog_parrot.hello;` - 定义了当前类所在的包名为`net.frog_parrot.hello`。 - **...
在J2ME中,用户界面(UI)通常使用 Lightweight UI 或 Canvas 来创建,MessageScreen可能是使用Canvas自定义的一个界面组件,用于显示游戏内的通知、得分或错误信息。 5. **MainScreen.java** `MainScreen` 可能是...
在给定的代码中,Midlet 类主要负责设置主界面为 MyCanvas 类的一个实例。`startApp()` 方法调用时,将 MyCanvas 类实例设为当前显示的内容。 ```java protected void startApp() throws ...
TictacToe MIDlet是一个简单的游戏应用,展示了如何使用MIDP图形编程创建一个互动游戏。它由以下几个部分组成: #### 3.1.1 概述 游戏界面由3x3的格子组成,玩家和AI(或另一个玩家)轮流在空格上放置标记(通常是...
1. **LWUIT库**:LWUIT是一个轻量级的用户界面库,它提供了丰富的UI组件和动画效果,比MIDP内置的Canvas更强大,更适合创建复杂且美观的界面。在LWUIT中,可以通过修改Form或者Display的属性来实现全屏。 2. **MIDP...
在这个特定的【源码】J2ME时钟源码示例中,我们主要关注的是如何在J2ME环境下构建一个能够显示实时时间的时钟应用。 首先,J2ME的用户界面通常基于WTK(Java Wireless Toolkit)提供的Midlet类。Midlet是J2ME应用的...
总之,手机游戏俄罗斯方块源代码是学习J2ME游戏开发的绝佳实例,通过深入分析和实践,开发者能够掌握移动平台上开发游戏的关键技术和流程。无论是初学者还是经验丰富的开发者,都能从中受益匪浅。
- `TempleteApp`创建了一个Canvas实例`keyCanvas`,并将其设置为当前显示的内容。 - `TempleteCanvas`扩展了Canvas,并添加了三个处理键盘事件的方法。在这里,你可以根据需求编写代码来响应不同的键盘事件。 4. ...
为了实现屏幕之间的切换,MIDlet需要管理多个屏幕实例,并使用Display类获取当前显示的屏幕,以及通过Displayable接口的show()方法来展示新的屏幕。以下是一个简单的屏幕切换示例: ```java public class MyMIDlet ...
【标题】: "在J2ME程序中制作Splash画面效果" 在Java 2 Micro Edition (J2ME)平台上开发移动应用程序时,为了...压缩包中的文件" G2 "、"SplashTest"和"H"可能是相关的源代码或资源文件,用于演示或实例化这个过程。
总的来说,"j2me 俄罗斯方块源码"不仅仅是一个游戏,它是J2ME编程技术的具体应用实例,涵盖了图形绘制、事件处理、对象模型设计等多个方面,对于学习和理解J2ME开发具有很高的参考价值。通过分析和研究这个源码,...
`MessageMIDlet2.java`是这个短信发送程序的主要源代码文件,它包含了一个或多个MIDlet类,这些类是Java ME应用程序的核心组成部分。MIDlet类通常包括启动应用程序的生命周期方法,如`startApp()`、`pauseApp()`和`...
每个MIDlet程序只有一个`Display`实例,可以通过`getDisplay()`方法获取。`Display`提供了`setCurrent()`方法,用于在不同的`Displayable`对象间切换,比如从一个表单切换到另一个表单。 **Alert类** `Alert`是...
1. **MIDlet Suite**:这是J2ME应用程序的基本单元,由一个或多个MIDlets(J2ME应用程序的实例)组成,以及相关的资源文件。 2. **MIDlet类**:MIDlet是J2ME应用的主要入口点,继承自javax.microedition.midlet....
每个MIDlet都运行在一个独立的Java虚拟机实例中,确保应用程序之间的隔离。 ##### 2.3 MIDP用户界面编程概述 - **UI模式与类库结构:** MIDP采用了一种层次化的用户界面设计模式,主要包括`Screen`、`Canvas`、`...