Java 如何返回浏览器';“物理后退”按钮的历史记录?
我正在制作一个应用程序,在其中我打开一个Java 如何返回浏览器';“物理后退”按钮的历史记录?,java,blackberry,browser,navigation,Java,Blackberry,Browser,Navigation,我正在制作一个应用程序,在其中我打开一个BrowserField,用户可以进一步导航到网页中的链接。问题是,当我按下physical back(物理后退)按钮时,会显示上一个屏幕,而我想在浏览器字段中显示上一页。怎么做?这可能吗 谢谢。您需要使用canGoBack()和goBack()方法返回上一页。只需越过keyChar方法即可控制ESCAPE键输入,并将您自己的逻辑如下所示: public boolean keyChar(char key, int status, int time) {
BrowserField
,用户可以进一步导航到网页中的链接。问题是,当我按下physical back(物理后退)按钮时,会显示上一个屏幕,而我想在浏览器字段
中显示上一页。怎么做?这可能吗
谢谢。您需要使用canGoBack()
和goBack()
方法返回上一页。只需越过keyChar
方法即可控制ESCAPE
键输入,并将您自己的逻辑如下所示:
public boolean keyChar(char key, int status, int time) {
if ( key == Characters.ESCAPE) {
if(yourBrowserField.getHistory().canGoBack()){
yourBrowserField.getHistory().goBack();
}else{
UiApplication.getUiApplication().popScreen(this);
return true;
}
}
}
是的,它是可能的 请尝试以下代码:
public class NewsBrowserScreen extends MainScreen
{
int current_index,popup;
String url;
VerticalFieldManager vertical;
BrowserField browserField;
BrowserFieldConfig browserFieldConfig;
BrowserFieldHistory browserFieldHistory;
public NewsBrowserScreen(int current_index,int popup,String url)
{
this.current_index=current_index;
this.popup=popup;
this.url=url;
createGUI();
}
private void createGUI()
{
vertical=new VerticalFieldManager(VERTICAL_SCROLL|VERTICAL_SCROLLBAR|HORIZONTAL_SCROLL|HORIZONTAL_SCROLLBAR);
browserFieldConfig=new BrowserFieldConfig();
browserFieldConfig.setProperty(BrowserFieldConfig.NAVIGATION_MODE, BrowserFieldConfig.NAVIGATION_MODE_POINTER);
browserField=new BrowserField(browserFieldConfig);
browserFieldHistory=browserField.getHistory();
vertical.add(browserField);
add(vertical);
browserField.requestContent(url);
}
public boolean onClose()
{
if(browserFieldHistory.canGoBack())
{
browserFieldHistory.goBack();
return true;
}
else
{
browserFieldHistory.clearHistory();
return super.onClose();
}
}
}
够了 我不知道有个Browserfield历史!我会检查这个,然后再给你回复…奇怪…在所有情况下都尝试返回true。尝试
yourBrowserField.getHistory().go(-1)代码>我的坏…我返回了错误
!这与@tipycalFlow的答案相同…:(…clearHistory()除外。我在许多应用程序中使用了这个类;这个类是否有效?是否有帮助?您是否测试过这个类?看看两者的区别;另一个答案一直都是正确的…我犯了一个愚蠢的错误…所以我已经接受了它…虽然您的答案也是正确的,所以我给了您+1:)