2011-03-08 199 views
2

从我的应用程序中,我使用Intent在浏览器中打开网页。默认行为是后退按钮导致浏览器中的上一页,而不是返回到我的应用程序。有没有办法强制后退按钮将用户返回到我的应用程序?浏览器中的后退按钮

回答

5

一旦您使用意图打开到另一个应用程序,它取决于该应用程序来处理后退按钮。如果你只是想表明一个网页作为一项活动,你可以运行自己的活动,举办WebView和使用以下方法来打开你的网页:

webview.loadUrl("http://lolcats.com/"); 

而在你的活动,你可以重写后退按钮做你需要做的事:

@Override 
public void onBackPressed() 
{ 
    // put code here to do things 
} 
+0

谢谢。如果我理解你的话,就没有必要重写一些东西。 WebView只是一个视图和返回按钮按预期工作 - 去往以前的活动,而不是前一页。我对吗? – damluar 2011-03-08 23:27:01

+0

是的,你说得对。我想你可能需要做一些别的事情,但如果你只需要显示一个网页并返回上一个活动的后退按钮,你不需要重写。 – 2011-03-08 23:34:22

+0

可能你知道另一个问题的答案。如果浏览器符合适当的模式的URI,浏览器就可以启动其他活动。 WebView有可能吗? – damluar 2011-03-08 23:55:25

1

你打电话给浏览器怎么样?如果你这样做:

Uri url = Uri.parse("http://mysite.com/"); 
Intent launchBrowser = new Intent(Intent.ACTION_VIEW, url); 
startActivity(launchBrowser); 

那么它应该如你所愿地工作。

+0

是的,我也是这样做的。但我读了这个浏览器重新实现后退按钮,并以不同的方式做它。你可以解释吗? – damluar 2011-03-08 23:24:50