如何获取webview当前持有的网页标题?

塔赫尔·埃尔·哈雷斯(Taher El-hares)

我正在尝试获取Webview的标题,因此可以将其作为字符串存储在数据库中。但是我找不到办法。

我尝试使用mwebview.Title,但有时会得到与URL相同的结果。

罗伯特·布鲁斯

这是我在自定义WebViewClient中使用OnPageFinished重写合并的完整示例。

WebViewCustomActivity.cs

using System;
using Android.App;
using Android.OS;
using Android.Webkit;

namespace XamdroidMaster.Activities {

    [Activity(Label = "Custom WebViewClient", MainLauncher = true)]
    public class WebViewCustomActivity : Activity {

        protected override void OnCreate(Bundle savedInstanceState) {
            base.OnCreate(savedInstanceState);

            SetContentView(Resource.Layout.WebView);
            WebView wv = FindViewById<WebView>(Resource.Id.webviewMain);

            CustomWebViewClient customWebViewClient = new CustomWebViewClient();
            customWebViewClient.OnPageLoaded += CustomWebViewClient_OnPageLoaded;

            wv.SetWebViewClient(customWebViewClient);
            wv.LoadUrl("https://www.stackoverflow.com");
        }

        private void CustomWebViewClient_OnPageLoaded(object sender, string sTitle) {
            Android.Util.Log.Info("MyApp", $"OnPageLoaded Fired - Page Title = {sTitle}");
        }

    }

    public class CustomWebViewClient : WebViewClient {

        public event EventHandler<string> OnPageLoaded;

        public override void OnPageFinished(WebView view, string url) {
            OnPageLoaded?.Invoke(this, view.Title);
        }

    }

}

WebView.axml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/WebView"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@android:color/transparent">
    <WebView
        android:id="@+id/webviewMain"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="#FFFFFF" />
</LinearLayout>

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何获取当前持有的变体类型,并定义该类型的新变量

获取当前持有的std :: variant的typeid(例如boost :: variant type())

获取在Ant元素中持有的价值

如何枚举TCategoryPanel持有的所有控件?

如何获得对boost :: any持有的数据的const引用?

有没有办法找到当前pthread持有的pthread_mutexes列表?

StampedLock.writeLock()是否释放当前线程持有的读取锁?

如何判断当前会话是否持有锁?

如何使用HttpClient从网页获取“标题”

如何获取并设置当前网页的滚动位置?

如果线程试图获取它已经持有的锁,会发生什么?

如何获取持有状态的“ activeCat”对象的所有信息?

Selenium不能从网页上获取所有的href

TBYTE可以持有的最大价值

jqGrid-如何获取当前网格的标题?

从任何网页获取标题

如何使用该对象持有的引用列表到自己的Java流打印嵌套列表

如何将哈希值传递到无序映射中以减少持有的时间?

如何将CookieManager持有的cookie传递给Android中的Jsoup?

如何将承诺转换为它持有的数组?

您如何访问由共享指针持有的类方法?

如何计算一个月内持有的最大金额?

如何获取JavaFx TabPane标题作为WebView的网站标题?

无法创建循环以从网页中获取所有标题

如何使用 JavaScript 执行器获取网页标题

如何在 UWP 中获取 WebView 的网页内容

如何在WebView Android中获取网页的颜色

如何查找当前持有java.util.concurrent.Semaphore许可的线程?

如何下载当前网页