2010-08-16 80 views
0

我用這對我的屏幕之一:如何在BlackBerry中刷新屏幕?

protected void makeMenu(Menu menu, int instance){ 
if (UserData.sessionId != null){ 
    menu.add(logOut); 
    menu.add(setting); 
} 
menu.add(exitApp); 

}

的「註銷」和「設置」菜單僅出現在用戶登錄後(因此,會話ID不爲空) 。 如何在用戶註銷後從菜單中消除「註銷」和「設置」,同時屏幕仍在顯示?

invalidate()?

回答

0

每次按下菜單按鈕時都應調用makeMenu(),因此不需要重新繪製。一旦用戶註銷,UserData.sessionId是否正確更新?

你也應該調用super.makeMenu()當你重寫列出MakeMenu()

我不能發佈一個鏈接到Java文檔,因爲我沒有足夠的聲譽,被在那裏提及。

+0

>>每次按下菜單按鈕時都應該調用makeMenu(),這樣就不需要重新繪製 您確定嗎?因爲在用戶從應用程序註銷後,註銷和設置菜單仍然可見。我猜那裏有錯。嗯.. >> UserData.sessionId在用戶註銷後是否正確更新? 是的。 UserData.sessionId被禁止。但讓我再次重新檢查我的代碼... – anta40 2010-08-16 12:41:38

+0

我再次無法鏈接到黑莓Java文檔,但makeMenu()被onMenu()調用,每次要顯示菜單時都會調用它。你可以看看自己檢查。添加一些簡單的日誌記錄語句可能會有所幫助,或者有使用黑莓eclipse插件的選項。 – 2010-08-16 13:36:51

+0

那麼,你過得怎麼樣?你打算用你的進度更新答案嗎? – 2010-08-18 10:57:55