如何在BlackBerry中刷新屏幕?
问题描述:
我用这对我的屏幕之一:如何在BlackBerry中刷新屏幕?
protected void makeMenu(Menu menu, int instance){
if (UserData.sessionId != null){
menu.add(logOut);
menu.add(setting);
}
menu.add(exitApp);
}
的“注销”和“设置”菜单仅出现在用户登录后(因此,会话ID不为空) 。 如何在用户注销后从菜单中消除“注销”和“设置”,同时屏幕仍在显示?
invalidate()?
答
每次按下菜单按钮时都应调用makeMenu(),因此不需要重新绘制。一旦用户注销,UserData.sessionId是否正确更新?
你也应该调用super.makeMenu()当你重写列出MakeMenu()
我不能发布一个链接到Java文档,因为我没有足够的声誉,被在那里提及。
>>每次按下菜单按钮时都应该调用makeMenu(),这样就不需要重新绘制 您确定吗?因为在用户从应用程序注销后,注销和设置菜单仍然可见。我猜那里有错。嗯.. >> UserData.sessionId在用户注销后是否正确更新? 是的。 UserData.sessionId被禁止。但让我再次重新检查我的代码... – anta40 2010-08-16 12:41:38
我再次无法链接到黑莓Java文档,但makeMenu()被onMenu()调用,每次要显示菜单时都会调用它。你可以看看自己检查。添加一些简单的日志记录语句可能会有所帮助,或者有使用黑莓eclipse插件的选项。 – 2010-08-16 13:36:51
那么,你过得怎么样?你打算用你的进度更新答案吗? – 2010-08-18 10:57:55