3

如何在 web 视图中启用 ActionBar。我当前的代码直接在网络浏览器中加载页面并跳过我所有的其他活动逻辑,但我不知道为什么。

主要活动

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.webview);

    ActionBar actionBar = getSupportActionBar();
    actionBar.setTitle("My Page");
    actionBar.setDisplayShowHomeEnabled(false);

    WebView myWebView = (WebView) findViewById(R.id.webview);
    myWebView.loadUrl(http://www.google.com);
}

XML 文件

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

<WebView
    android:id="@+id/webview"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_marginTop="5dip"
/>

</LinearLayout>

我也尝试过创建一个对话框来显示 webview,但这也被证明是不成功的。谢谢!

4

2 回答 2

2

如何在 web 视图中启用 ActionBar。

您不会,就像您在Button. 操作栏是活动的 UI 组件,而不是小部件。

我当前的代码直接在网络浏览器中加载页面并跳过我所有的其他活动逻辑,但我不知道为什么。

我相当肯定它正在执行您的所有语句onCreate()。如果您使用调试器,您可以自己观看。

如果您的真正问题是操作栏没有出现,请确保您:

于 2012-08-20T19:21:53.660 回答
2

好的,所以我找到了问题的答案,但这更多的是技术性问题。

问题是该链接是一个重定向页面,因此内置的网络浏览器应用程序正在劫持我的会话,将其添加到我的 onCreate 方法中解决了它。

不过感谢您的回复!

myWebView.setWebViewClient(new WebViewClient() {
        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
            return false;
        }
});
于 2012-08-21T23:30:23.140 回答