Xamarin ios 自定义 WkWebViewRenderer 滚动事件
Posted
技术标签:
【中文标题】Xamarin ios 自定义 WkWebViewRenderer 滚动事件【英文标题】:Xamarin ios custom WkWebViewRenderer Scrolled event 【发布时间】:2020-06-18 08:19:15 【问题描述】:我在 My Xamarin Forms 应用程序中将 WebViewRenderer 更改为 WkWebViewRenderer。我之前有 Scrolled 方法,我覆盖它以检测滚动到结束。但是在 WkWebViewRenderer 中没有这样的方法可用。这还能如何实现?
public override void Scrolled(UIKit.UIScrollView scrollView)
base.Scrolled(scrollView);
float y1 = (float)scrollView.ContentOffset.Y;
if ((this.Element as CustomWebview).ScrolledToEnd == false)
if ((scrollView.ContentSize.Height - 20) < (y1 + this.Element.Height))
(this.Element as CustomWebview).ScrolledToEnd = true;
if ((this.Element as CustomWebview).ScrollToEndDelegate != null)
(this.Element as CustomWebview).ScrollToEndDelegate.Invoke(true);
【问题讨论】:
【参考方案1】:好的,所以我想现在我们可以使用 WkWebView 的 ScrollView 属性中的滚动事件来代替 Scrolled 方法。这对我有用:
protected override void OnElementChanged(VisualElementChangedEventArgs e)
base.OnElementChanged(e);
base.ScrollView.Scrolled += ScrollDetect;
private void ScrollDetect(object sender, EventArgs e)
throw new NotImplementedException();
【讨论】:
以上是关于Xamarin ios 自定义 WkWebViewRenderer 滚动事件的主要内容,如果未能解决你的问题,请参考以下文章
WKWebView CanPerform 上的 Xamarin iOS 死锁