gpt4 book ai didi

xaml - 如何解决 WebViewRenderer 已过时

转载 作者:行者123 更新时间:2023-12-05 00:39:53 25 4
gpt4 key购买 nike

这就是我得到的错误“WebViewRenderer.WebViewRenderer() 已过时

"此构造函数在 2.5 版本中已过时。请改用 WebViewRenderer(Context)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using Android.App;
using Android.Content;
using Android.OS;
using Android.Runtime;
using Android.Views;
using Android.Widget;
using Xamarin.Forms;
using ZoomWebView;
using Xamarin.Forms.Platform.Android;
using ZoomWebView.Droid;
using System.ComponentModel;
using Android.Webkit;
using Xamarin.Forms.PlatformConfiguration.AndroidSpecific;
using Xamarin.Forms.Internals;
using System.Threading.Tasks;

[assembly: ExportRenderer(typeof(MyWebView), typeof(MyWebViewRenderer))]


namespace ZoomWebView.Droid
{
public class MyWebViewRenderer : WebViewRenderer
{

protected override void OnElementChanged(ElementChangedEventArgs<WebView> e)
{
base.OnElementChanged(e);
if (e.OldElement != null || Element == null)
{
return;
}
var element = Element as MyWebView;
Control.Settings.TextZoom = element.ZoomInLevel;
}

protected override void OnElementPropertyChanged(object sender, PropertyChangedEventArgs e)
{
if(Control != null)
{
Control.Settings.BuiltInZoomControls = true;

Control.Settings.DisplayZoomControls = true;
}
var element = Element as MyWebView;
Control.Settings.TextZoom = element.ZoomInLevel;
base.OnElementPropertyChanged(sender, e);
}
}

我希望代码能够运行,因为我在 youtube 上关注了一个特定的系列,但事实并非如此。请问有什么我做错了吗?

最佳答案

你需要添加上下文:

public MyWebViewRenderer(Context context) : base(context)
{
}

在您的代码中:

  namespace ZoomWebView.Droid
{
public class MyWebViewRenderer : WebViewRenderer
{
public MyWebViewRenderer(Context context) : base(context)
{
}


protected override void OnElementChanged(ElementChangedEventArgs<WebView> e)
{
base.OnElementChanged(e);
if (e.OldElement != null || Element == null)
{
return;
}
var element = Element as MyWebView;
Control.Settings.TextZoom = element.ZoomInLevel;
}

protected override void OnElementPropertyChanged(object sender, PropertyChangedEventArgs e)
{
if(Control != null)
{
Control.Settings.BuiltInZoomControls = true;

Control.Settings.DisplayZoomControls = true;
}
var element = Element as MyWebView;
Control.Settings.TextZoom = element.ZoomInLevel;
base.OnElementPropertyChanged(sender, e);
}
}
}

关于xaml - 如何解决 WebViewRenderer 已过时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54376692/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com