use*_*464 10 java browser blackberry blackberry-simulator
我正在尝试在加载浏览器后返回上一页,但需要三次后退才能执行此操作.我尝试覆盖后退按钮单击,但仍然需要三次单击.我使用以下代码加载浏览器:
BrowserSession browserSession;
browserSession = Browser.getDefaultSession();
try{
browserSession.displayPage(mapLocation);
}catch(Exception e){
e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
EDIT从用户回答中复制:
我想转到上一个屏幕而不是浏览器中的上一页.后退按钮的代码:
protected boolean keyDown(int keycode, int status) {
if(Keypad.key(keycode) == Keypad.KEY_ESCAPE) {
_theApp.popScreen(this);
return true;
}
return false;
}
Run Code Online (Sandbox Code Playgroud)
这是返回的解决方案,当你点击返回(ESC)时,它会帮助你注意:os5.0以后可用
import net.rim.device.api.browser.field2.BrowserField;
import net.rim.device.api.browser.field2.BrowserFieldConfig;
import net.rim.device.api.browser.field2.BrowserFieldHistory;
import net.rim.device.api.ui.container.MainScreen;
import net.rim.device.api.ui.container.VerticalFieldManager;
public class NewsBrowserScreen extends MainScreen
{
String url="http://stackoverflow.com";
VerticalFieldManager vertical;
BrowserField browserField;
BrowserFieldConfig browserFieldConfig;
BrowserFieldHistory browserFieldHistory;
// BrowserSession browserSession;
public NewsBrowserScreen(int current_index,int popup,String 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();
}
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
858 次 |
最近记录: |