【发布时间】:2014-07-02 15:15:04
【问题描述】:
我有一个活动,其中 Webview 可用。如果我单击 webview 中的任何 URL,该 URL 会打开,但是当我单击后退按钮时,它不会出现在上一个 Webview 页面上,而是进入该 webview 页面之前的活动。
场景:- 我有一个 Xyz 活动,在 Xyz 活动的某些元素上单击它会转到一个 Webview 活动,该活动在 webview 上显示加载的 url。如果我单击任何 url 链接,它会在 webview 上打开,但是当我单击后退按钮时,它会返回 Xyz Activity 而不是 Webview Activity。我想回到 Webview Activity 而不是 Xyz Activity。
任何人都可以指导我吗,因为我无法找到我应该使用或实施什么来使其按我的需要工作? 任何帮助将不胜感激。提前致谢...
编辑:-
代码如下:-
public class StoryDetail extends SherlockActivity
{
WebView content;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.story_detail);
BaseStory story = BaseStory.createFromCursor(c); // BaseStory is a class containing Database values...
// Get the fields
content = (WebView) findViewById(R.id.content);
content.getSettings().setPluginState(PluginState.ON_DEMAND);
content.getSettings().setJavaScriptEnabled(true);
content.getSettings().setAllowFileAccess(true);
content.setWebChromeClient(new WebChromeClient());
content.setWebViewClient(new WebViewClient());
String html =
"<html><head>" +
"</head>" +
"<body>" +
"<section id=\"content\">" +
story.getContent() +
"</section>" +
"</body></html>"; //story.getContent() contains title, image, and url link supporting HTML Format itself.
//On clicking url link the webview open that page in Webview.
content.loadDataWithBaseURL("http://somelink/", html, "text/html", "UTF-8", "");
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if(event.getAction() == KeyEvent.ACTION_DOWN){
switch(keyCode)
{
case KeyEvent.KEYCODE_BACK:
if(content.canGoBack()){
content.goBack();
}else{
finish();
}
return true;
}
}
return super.onKeyDown(keyCode, event);
}
}
【问题讨论】:
-
@Apoorv 感谢您的链接,它有效,但是当它返回 Webview 页面时,它没有显示 Webview 中存在的任何 Html,任何想法如何再次包含它?