将事件附加到 UIWebView ScrollViewer 会阻止缩放
Attaching an event to UIWebView ScrollViewer prevents zooming
每当我将事件附加到 UIWebView 的 ScrollViewer 以检测滚动时,它会阻止 UIWebView 放大和缩小。但是,上下滚动仍然有效。我正在 UIWebView 中查看 PDF。
我试过这些事件:
滚动
滚动动画结束
缩放结束
缩放
例如我试过:
ContractWebView.ScrollView.Scrolled += (object sender, EventArgs e) =>{
Debug.WriteLine("Scrolled");
};
我已经尝试过一个空的事件主体。
您是否尝试过为 ScrollView 设置委托而不是使用事件?像这样:
public class ScrollViewDelegate : UIScrollViewDelegate
{
public override void Scrolled(UIScrollView scrollView)
{
Console.WriteLine("Scrolled");
}
}
ContractWebView.ScrollView.Delegate = new ScrollViewDelegate();
编辑:
这是我用于测试的完整代码,它对我有用:
public class IPadViewController1 : UIViewController
{
public override void ViewDidLoad()
{
base.ViewDidLoad();
UIWebView webview = new UIWebView(new CGRect(0, 0, UIScreen.MainScreen.Bounds.Width, UIScreen.MainScreen.Bounds.Height));
webview.ScrollView.Delegate = new ScrollViewDelegate();
webview.ScalesPageToFit = true;
View.AddSubview(webview);
string urlAddress = "http://google.com";
NSUrl url = NSUrl.FromString(urlAddress);
//URL Requst Object
NSUrlRequest requestObj = NSUrlRequest.FromUrl(url);
webview.LoadRequest(requestObj);
}
}
每当我将事件附加到 UIWebView 的 ScrollViewer 以检测滚动时,它会阻止 UIWebView 放大和缩小。但是,上下滚动仍然有效。我正在 UIWebView 中查看 PDF。
我试过这些事件:
滚动 滚动动画结束 缩放结束 缩放
例如我试过:
ContractWebView.ScrollView.Scrolled += (object sender, EventArgs e) =>{
Debug.WriteLine("Scrolled");
};
我已经尝试过一个空的事件主体。
您是否尝试过为 ScrollView 设置委托而不是使用事件?像这样:
public class ScrollViewDelegate : UIScrollViewDelegate
{
public override void Scrolled(UIScrollView scrollView)
{
Console.WriteLine("Scrolled");
}
}
ContractWebView.ScrollView.Delegate = new ScrollViewDelegate();
编辑: 这是我用于测试的完整代码,它对我有用:
public class IPadViewController1 : UIViewController
{
public override void ViewDidLoad()
{
base.ViewDidLoad();
UIWebView webview = new UIWebView(new CGRect(0, 0, UIScreen.MainScreen.Bounds.Width, UIScreen.MainScreen.Bounds.Height));
webview.ScrollView.Delegate = new ScrollViewDelegate();
webview.ScalesPageToFit = true;
View.AddSubview(webview);
string urlAddress = "http://google.com";
NSUrl url = NSUrl.FromString(urlAddress);
//URL Requst Object
NSUrlRequest requestObj = NSUrlRequest.FromUrl(url);
webview.LoadRequest(requestObj);
}
}