【问题标题】:Xamarin iOS webview Zoom is not workingXamarin iOS webview 缩放不起作用
【发布时间】:2015-05-13 18:17:04
【问题描述】:

当我将 DraggingStarted 或任何其他 ScrollView 事件添加到 webview 时,缩放功能被禁用。

string urlAddress = "http://google.com";
NSUrl url = NSUrl.FromString(urlAddress);
//URL Requst Object
NSUrlRequest requestObj = NSUrlRequest.FromUrl(url);
webview.LoadRequest (requestObj);

//一旦添加后线缩放停止

webview.ScrollView.DraggingStarted += (object sender, EventArgs e) => {};

我尝试过关注但没有成功

webview.ScrollView.ViewForZoomingInScrollView = (scrollView) => {
    return webview;
};

【问题讨论】:

    标签: ios webview xamarin


    【解决方案1】:

    您是否尝试为 ScrollView 设置委托而不是使用事件?像这样的:

    public class ScrollViewDelegate : UIScrollViewDelegate
    {
        public override void DraggingStarted(UIScrollView scrollView)
        {
            Console.WriteLine("DraggingStarted");
        }
    }
    
    webview.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);
        }
    }
    

    【讨论】:

    • @SoneyAntony:你设置了 webview.ScalesPageToFit = true 吗?
    • 感谢您的支持,我已经使用 xib 创建了,现在我以编程方式创建了 webview 并开始工作。
    猜你喜欢
    • 2020-05-08
    • 1970-01-01
    • 2021-01-08
    • 2020-07-15
    • 1970-01-01
    • 2018-12-15
    • 2022-10-17
    • 2017-09-16
    • 1970-01-01
    相关资源
    最近更新 更多