我是 LWUIT 的新手,尽管我发现它使用起来非常有趣,但我一直面临着预览MIDlet
我生成的任何内容的挑战。每次我MIDlet
在模拟器中运行时,我都会在ArrayOutOfBOundException
模拟器的屏幕上显示为表单,并且只有在表单上按 OK 后才会离开。
这是我的代码
import javax.microedition.midlet.*;
import com.sun.lwuit.*;
import com.sun.lwuit.events.*;
import com.sun.lwuit.Form;
import com.sun.lwuit.plaf.UIManager;
import com.sun.lwuit.util.Resources;
import java.io.IOException;
public class Ruwwa extends MIDlet implements ActionListener {
public void startApp() {
Display.init(this);
Form f = new Form("");
f.setTitle("Mairuwa Portal");
Label bottomText = new Label();
bottomText.setText("Welcome to the Mairuwa Portal");
bottomText.setTextPosition(Component.CENTER);
f.addComponent(bottomText);
Command exitCommand = new Command("Exit");
f.addCommand(exitCommand);
f.addCommandListener(this);
f.show();
try {
Resources r = Resources.open("/res/working.res");
UIManager.getInstance().setThemeProps(r.getTheme("Mairuwa Theme"));
} catch (IOException ioe) {
// Do something here.
}
}
public void pauseApp() {}
public void destroyApp(boolean unconditional) {}
public void actionPerformed(ActionEvent ev) {
Label label = new Label();
label.setText("Initiating IO, please wait...");
Display.getInstance().invokeAndBlock(new Runnable() {
public void run() {
// perform IO operation...
}
});
label.setText("IO completed!");
// update UI...
}
}
它显示了带有此代码的表单,但它没有显示在我创建的主题上。主题的名称是“working.res”,我将它包含在项目文件夹的 res 文件夹中。Thanx