Android WebView活动工具栏

时间:2018-05-07 07:24:51

标签: android android-webview android-toolbar

在我的应用中,我有一个加载URL的WebView Activity。

我有一个自定义工具栏,我希望它显示页面标题,URL以及是否是安全连接。

我观察到几个着名的应用程序(Twitter,Youtube,Telegram ......)为他们的WebView活动提供了完全相同的工具栏模型,我想知道Android是否有一个默认的工具栏,或者他们是否已经构建了相同的工具栏模型自定义工具栏。

而且,如果是第二种情况(我必须自己构建自定义工具栏),我可以访问覆盖WebViewClient的onPageFinished方法的页面标题,但是如果连接是否安全,我该怎么办呢? / p>

我包含了我正在谈论的Telegram工具栏的快照(对于其他应用程序也是如此):

enter image description here

非常感谢,对不起我的英语!

1 个答案:

答案 0 :(得分:1)

要在此类视图中显示网址,您不需要WebViewActivity。

这可以使用Chrome的自定义标签来实现。

要实现此目的,请按照下列步骤操作: (1)在build.gradle - >中添加依赖项compile 'com.android.support:customtabs:23.3.0'

(2)在某些实用程序类中编写此方法

    public static void openUrlInChromeCustomTab(Context context, String url) {
    try {
        CustomTabsIntent.Builder builder = new CustomTabsIntent.Builder();
        CustomTabsIntent customTabsIntent = builder.build();
        customTabsIntent.intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        customTabsIntent.launchUrl(context, Uri.parse(url));
    } catch (ActivityNotFoundException e) {
        // might not available.
        //openUrlLinkInWebView(context, url);
    } catch (Exception e) {
        e.printStackTrace();
    }
}

(3)从您想要打开链接的地方调用此方法:openUrlInChromeCustomTab(activity, url");

全部。

此外,您可以根据需要自定义它。在https://developer.chrome.com/multidevice/android/customtabs

了解详情