我正在使用命令進行對話。此命令必須關閉對話框並返回到上一個窗體,但它不按預期工作。當我按下命令時,它會關閉對話框,但表單不會返回。LWUIT使用dispose的對話框問題()
我正在使用資源編輯器。狀態機控制應用程序的導航。
的command's邏輯中的代碼是:
dialog.dispose();
StateMachine.back();
是dispose()
我必須用關閉我的對話框的方法是什麼?
感謝您的閱讀。
我正在使用命令進行對話。此命令必須關閉對話框並返回到上一個窗體,但它不按預期工作。當我按下命令時,它會關閉對話框,但表單不會返回。LWUIT使用dispose的對話框問題()
我正在使用資源編輯器。狀態機控制應用程序的導航。
的command's邏輯中的代碼是:
dialog.dispose();
StateMachine.back();
是dispose()
我必須用關閉我的對話框的方法是什麼?
感謝您的閱讀。
正如尼爾默爾所述設置對話框去前面的表格,所以當你調用「回()」按照預期的呼叫處置工作()打破了邏輯。
您可以爲正在顯示的表單重寫postShow方法,並檢測離開對話框的情況(只需在返回時打開標誌),並在該條件下顯示錶單時調用back方法。
謝謝謝。再見! – Mun0n
不要叫StateMachine.back()
只使用dialog.dispose();
我需要撥打StateMachine.back
,因爲我需要回到以前的表單。我的意思是,我需要關閉對話框並在表單中返回到前一個表單。 但除此之外。當我調用dispose時,對話框關閉但命令的功能很糟糕。 –
Mun0n
還有另一種解決方案:嘗試使用protected void onShowCompleted()
方法,您必須在Form
中執行該方法。而在你Form
(例如private boolean isDialogShown;
),那麼該布爾變量來false
,剛打開Dialog
的代碼之前你Form
一套in the constructor
其值設置爲true
聲明boolean
變量。然後在protected void onShowCompleted()
測試的代碼中如果它是真的,並且如果它是真的,則將其設置爲false並執行後退動作:backForm.showBack();
什麼是狀態機? – 2011-08-22 12:38:24
StateMachine是從LWUIT資源編輯器生成的類。它允許管理應用程序的導航等。 – Mun0n