我在MIDlet
類創建的static
Form
if (!myMidlet.lastCanvas.isEmpty())
myMidlet.lastCanvas.clear();
myMidlet.lastForm = this;
然後在startApp()
我寫道:
public void startApp() {
...
if (lastForm != null)
lastForm.showBack();
else
{
new MainForm(this).show();
}
}
編輯:
對於帆布:
在MIDlet
類:
public static Hashtable lastCanvas = new Hashtable();
在canvas
類(構造):
if (myMidlet.lastForm != null)
myMidlet.lastForm = null;
if (!myMidlet.lastCanvas.isEmpty())
myMidlet.lastCanvas.clear();
myMidlet.lastCanvas.put(new String("Form"), this);
而在startApp()
:
public void startApp() {
VKBImplementationFactory.init();
Display.init(this);
if (lastForm != null)
lastForm.showBack();
else if (!lastCanvas.isEmpty())
{
javax.microedition.lcdui.Display.getDisplay(this).setCurrent((Canvas)lastCanvas.get(new String("Form")));
}
else
new MainForm(this).show();
}
我想用HashTable
的這種做法甚至會適用於任何形式lcdui
。
顯示當前表格中的pauseApp() – Lucifer 2011-12-20 07:30:25
這並不工作:我在MIDlet創建一個'公共靜態com.sun.lwuit.Form lastForm = NULL ;'並且在一個Form的構造函數中:'myMidlet.lastForm = this;'。然後在'pauseApp()'我的代碼中:'lastForm.showBack();'但總是顯示主窗體!最後一張表格僅顯示幾秒鐘,但主窗體隨即打開! – pheromix 2011-12-20 07:49:30
你是用普通的lcdui形式而不是由lwuit提供的嗎? – gnat 2011-12-20 07:52:41